给定一个数据结构:
[
{'id':0, 'items':
[
{'id': 0, name: "Tom1", age: 10},
{'id': 0, name: "Mark1", age: 15},
{'id': 0, name: "Pam1", age: 17}
]
},
{'id':1, 'items':
[
{'id': 1, name: "Tom12", age: 8},
{'id': 1, name: "Mark12", age: 3},
{'id': 1, name: "Pam12", age: 2}
]
},
{'id':2, 'items':
[
{'id': 2, name: "Tom13", age: 55},
{'id': 2, name: "Mark13", age: 66},
{'id': 2, name: "Pam13", age: 77}
]
},
]
Run Code Online (Sandbox Code Playgroud)
我想在每个字典中找到年龄具有最大值的项目并选择它.我如何实现这一目标?
试试这个:
for dVals in yourData:
print max(dVals['items'], key=lambda x:x['age'])
Run Code Online (Sandbox Code Playgroud)
或者单行:
print [max(dVals['items'], key=lambda x: x['age']) for dVals in yourData]
{'id': 0, 'age': 17, 'name': 'Pam1'}
{'id': 1, 'age': 8, 'name': 'Tom12'}
{'id': 2, 'age': 77, 'name': 'Pam13'}
Run Code Online (Sandbox Code Playgroud)