0

ここに簡単なPythonコードがあります

for item in sorted(frequency, key=frequency.get, reverse=True)[:20]:
  print(item, frequency[item])

frequency.get()ただし、の代わりに呼び出すとfrequency.get、次のエラーが表示されます"get expected at least 1 arguments, got 0"

ルビーから来ました。Rubygetget()まったく同じです。Pythonでも同じではありませんか?

たとえば、ここではhttp://www.tutorialspoint.com/python/dictionary_get.htmget()と notの説明がありgetます。とはget?

4

1 に答える 1

9

frequency.getメソッド自体を記述しますが、frequency.get()実際にはメソッドを呼び出します (そして、誤って引数を与えません)。これがRubyとは違うというのはあなたの言うとおりです。

たとえば、次のことを考慮してください。

frequency = {"a": 1, "b": 2}
x = frequency.get("a")

この場合、xは に等しい1です。ただし、実行した場合:

x = frequency.get

xは関数になります。例えば:

print x("a")
# 1
print x("b")
# 2

この関数は、 に渡すものですsorted

于 2013-01-03T05:10:49.733 に答える