Tru*_*ran 2 python lambda dictionary
有人可以帮我选择两个键之间的最小值吗?例如,如果我有字典列表:
results = [
{
"model": "short",
"score": 34,
"alt_score": 1
},
{
"model": "med",
"score": 22,
"alt_score": 11
},
{
"model": "tall",
"score": 42,
"alt_score": 90
},
{
"model": "xtall",
"score": 83,
"alt_score": 15
},
]
Run Code Online (Sandbox Code Playgroud)
我想选择scoreOR 最小的字典alt_score.我知道如何找到最小score或alt_score单独的字典:
min(results, key=lambda x:x['alt_score'])
但我不确定如何一次看两个键.我需要这样的东西:
min(results, key=lambda x:x['score', 'alt_score])
要么
min(results, key=lambda x:x['score'] or x:x['alt_score'])
结果应该返回:
{
"model": "short",
"score": 34,
"alt_score": 1
}
Run Code Online (Sandbox Code Playgroud)
提前致谢!
min(results, key=lambda x:min(x['score'], x['alt_score']))
Run Code Online (Sandbox Code Playgroud)
Lambdas可以在其中包含几乎任何表达式,包括内部调用min()以获得该项目的较小者,score或者alt_score.
| 归档时间: |
|
| 查看次数: |
155 次 |
| 最近记录: |