我有一个字典列表:
list = [
{'i': 1, 'j': 1, 'diff': 39},
{'i': 1, 'j': 1, 'diff': 27},
{'i': 1, 'j': 1, 'diff': 18},
{'i': 1, 'j': 1, 'diff': 33},
...
]
从此,我需要提取的值i
,并j
为具有最大的入口diff
。
我已经看到了很多解决方案,它们只会提取出最大的结果diff
,但这不是这里所需要的。而且我可以想到实现此目的的方法,该方法将涉及将每个值逐个循环并与其他值进行比较,但这似乎既无效又无效。
最好的方法是什么?
max
与key
参数一起使用以指定您需要在列表内查找具有'diff'
键最大值的字典:
lst = [
{'i': 1, 'j': 1, 'diff': 39},
{'i': 1, 'j': 1, 'diff': 27},
{'i': 1, 'j': 1, 'diff': 18},
{'i': 1, 'j': 1, 'diff': 33}
]
max_dict = max(lst, key=lambda x: x['diff'])
print(max_dict['i']) # 1
print(max_dict['j']) # 1
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句