假设我们有一个字典,
dict = {'blue': ['sky','sea'], 'orange': ['carrots','sunset','oranges'], 'green': ['grass']}
输出应为
['carrots','sunset','oranges']
因为它获得了最大数量的值。
这是我到目前为止所做的:
for k,v in dict.items():
print(max(k,len(v)))
答案 0 :(得分:9)
为什么不呢:
>>> d = {'blue': ['sky','sea'], 'orange': ['carrots','sunset','oranges'], 'green': ['grass']}
>>> print max(d.values(), key=len)
['carrots', 'sunset', 'oranges']
最好不要命名字典dict
。这将覆盖内置类型。
答案 1 :(得分:1)
由于标题要求他们输入密钥 - 这是如何做到的
>>> d = {'blue': ['sky','sea'], 'orange': ['carrots','sunset','oranges'], 'green': ['grass']}
>>> max_key = max(d, key=lambda k: len(d[k]))
>>> max_key
'orange'
一旦你拥有密钥,查找它比迭代d.values()更快 - 假设你确实也需要密钥
>>> d[max_key]
['carrots', 'sunset', 'oranges']
或者,你可以拉出一个包含键/值对的元组
>>> max(d.items(), key=lambda i :len(i[1]))
('orange', ['carrots', 'sunset', 'oranges'])