假设我有这个:
[ {"name": "Tom", "age": 10}, {"name": "Mark", "age": 5}, {"name": "Pam", "age": 7} ]
并通过搜索“ Pam”作为名称,我想检索相关的字典: {name: "Pam", age: 7}
{name: "Pam", age: 7}
如何实现呢?
你可以使用生成器表达式:
>>> dicts = [ ... { "name": "Tom", "age": 10 }, ... { "name": "Mark", "age": 5 }, ... { "name": "Pam", "age": 7 }, ... { "name": "Dick", "age": 12 } ... ] >>> next(item for item in dicts if item["name"] == "Pam") {'age': 7, 'name': 'Pam'}
如果你需要处理不存在的商品,则可以按照用户Matt的 建议进行操作,并使用稍有不同的API提供默认值:
next((item for item in dicts if item["name"] == "Pam"), None)