2011-07-03 3 views

답변

8

내장 된 기능은, max()는 점수를 추출하는 람다를 사용하는 것 lambda:

>>> max(lst, key=lambda x:x['score']) 
{'score': 10, 'name': 'jerry'} 
+0

Johnsyweb에 감사드립니다. – unice

+0

언제나 기꺼이 도와 드리겠습니다. – Johnsyweb

3

내 선호하는 방법의 형태로 공급 될 수있는 선택 key 기능을한다 :

>>> lst= [{'name':'tom','score':5},{'name':'jerry','score':10},{'name':'jason','score':8}] 
>>> max(lst, key=lambda d: d['score']) 
{'score': 10, 'name': 'jerry'} 
2
lst= [{'name':'tom','score':5},{'name':'jerry','score':10},{'name':'jason','score':8}] 

print max(lst, key=lambda x: x['score']) 
max
9

key 인수에 lambda를 사용하는 대신,인:

from operator import itemgetter 
max(lst, key=itemgetter('score')) 
관련 문제