找出字典中最小value值對應的key


今天做一個練習題,遇到一個問題,就是找字典中最小value值對應的key,

1.我自己寫了一段,就是利用min函數先找到最小value,然后遍歷字典一遍找對應的key值。

d={'a':10,'b':34,'c':23,'d':1,'e':3,'f':1,'h':3}

minKeyLst=[]

minValue=min(d.values())
for i,j in d.items():
    if j==minValue:
        minKeyLst.append(i)

print minKeyLst
#結果
======================== RESTART: C:\Python27\main.py ========================
['d', 'f']
>>> 

網上搜了下其他方法,

2.min(d,key=d.get)方法獲得字典dict中value的最小值所對應的鍵的方法,min(dict, key)方法首先遍歷迭代器,並將返回值作為參數傳遞給key對應的函數,然后將函數的執行結果傳給key,並以此時key值為標准進行大小判斷,返回最小值。

這個只是返回一個鍵

d={'a':10,'b':34,'c':23,'d':1,'e':3,'f':1,'h':3}
print min(d,key=d.get)
#結果
d

3.使用匿名函數

print min(d,key=lambda x : d[x])
d

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM