python-通过键访问列表元素

如果我具有以下结构:


[

    {'id' : 100, 'name' : 'Bill'},

    {'id' : 100, 'name' : 'Dave'}

]

如何通过“名称”键获取元素。就是说,我想得到{'id' : 100, 'name' : 'Dave'}但不必重复检查每个对象是否匹配。


这有可能吗?


繁花如伊
浏览 226回答 2
2回答

呼唤远方

您可以首先将字典列表转换为以“名称”为键的单个字典:data = {x['name']: x for x in original_data}然后您使用:data['Dave']data['Bill']PS:对于2.7之前的Python,请使用以下命令:data = dict((x['name'], x) for x in original_data)

沧海一幻觉

这就是您要寻找的[x for x in a if x['name']=='Dave']但是在这里,您要遍历列表并检查每个项目。实际上,如果不对列表进行遍历,就无法做到这一点,因为它是alist而不是a map。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python