首页 > 解决方案 > 使用值从字典列表中访问字典

问题描述

我有字典列表

a = [{'id':'1','name':'john'}, {'id':'2','name':'johns'}, {'id':'3','name':'rock'}

我想显示使用id'2'来搜索字典的字典,想要的输出是这样的

{'id':'2','name':'johns'}

如何将字典显示为那样?

标签: pythondictionary

解决方案


您可以在 O(n) 中使用列表推导:

a = [{'id':'1','name':'john'}, {'id':'2','name':'johns'}, {'id':'3','name':'rock'}]

# [{'id': '2', 'name': 'johns'}]
print([d for d in a if d['id'] == '2'])

然而,将数据表示为字典更有效,在 O(1) 中:

a = {'1': {'name' : 'john'}, '2': {'name' : 'johns'}, '3': {'name' : 'rock'}}

# {'name': 'johns'}
print(a['2'])

推荐阅读