我有一个问题,从10天以来,我试图在书籍和互联网上找到解决办法,但找不到。这里有一个例子:
animals = { 'a': ['lion'], 'b': ['baboon'], 'c': ['goat']}
animals['d'] = ['donkey']
animals['d'].append('elephant')
animals['d'].append('swan')
我必须编写一个方法来找出与最长列表相关联的键。在这个例子中,输出应该是
largest(animals)
'd'
最佳答案
使用max()
内置自定义函数进行键之间的比较。
animals = { 'a': ['lion'], 'b': ['baboon'], 'c': ['goat']}
animals['d'] = ['donkey']
animals['d'].append('elephant')
animals['d'].append('swan')
largest = max(animals, key=lambda k: len(animals[k]))
使用
key
参数来max
函数允许更改比较元素的条件。在这种情况下,字典的键是根据dictionary
animals
中该键下存储的列表长度进行比较的。关于python - 如何在Python语言的字典中找到最大元素的键?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42001962/