19
我想要得到的字典鍵,它的值是所有字典值的最大值。 我發現了兩種方式,都不夠優雅。獲取最大值的字典密鑰
d= {'a':2,'b':5,'c':3}
# 1st way
print [k for k in d.keys() if d[k] == max(d.values())][0]
# 2nd way
print Counter(d).most_common(1)[0][0]
有沒有更好的方法?
如果有多個鍵會怎麼樣?我可以通過說'len'來獲得價值最高的最長密鑰嗎? – SiddharthaRT
@SiddharthaRT:你可以使用'lambda'作爲鍵:'max(d,key = lamda k:(d [k],len(k)))'將返回值最高的鍵,如果有不止一個這樣的關鍵,它將是那些返回的人中最長的關鍵。 –