列为字典中的值,获取最长列表的键


问题内容

给这样的字典

testDict = {76: [4], 32: [2, 4, 7, 3], 56: [2, 58, 59]}

如何获得最长列表的密钥?在这种情况下应该是32


问题答案:

用途max

>>> max(testDict, key=lambda x:len(testDict[x]))
32

如果多个键包含最长的列表:

那我想拿多个钥匙。

>>> testDict = {76: [4], 32: [2, 4, 7, 3], 56: [2, 58, 59], 10: [1, 2, 3, 4]}
>>> mx = max(len(x) for x in testDict.itervalues())
>>> [k for k, v in testDict.iteritems() if len(v)==mx]
[32, 10]