【发布时间】:2019-08-01 09:22:26
【问题描述】:
我试图从字典中查找最高的三个值,我应该返回该值的键 这个方法我遇到过
import heapq
def get_n_largest(n,dictionary):
return heapq.nlargest(n,dictionary,dictionary.get)
从 python 文档中我发现nlargest 需要接受一个整数、一个可迭代对象和一个键(如果提供)。
我不明白return语句中的dictionary.get()和dictionary.get()有什么区别
当我尝试打印字典的dictionary.get 时,它会返回
“0x0000020E77B12168处的dict对象的内置方法get”
我进行了一些搜索,但找不到有关它的概念。任何帮助将不胜感激!
【问题讨论】:
-
您是否应该将
get作为dictionary.get中的函数调用? -
nlargest方法的第三个参数是键或可调用对象,这就是您将 指针 传递给get方法的原因。这就是为什么当你print它时它会显示方法的名称和内存位置。 -
如果您想了解调用不带括号的函数,请阅读此问题的答案。 stackoverflow.com/questions/21785933/…
标签: python dictionary concept