从字典列表中提取一个字典 (Python)
Extracting one dictionary from a list of dictionaries (Python)
我有一个这样的字典列表:
[{'name': 'kabuto', 'id': 140},
{'name': 'articuno', 'id': 144},
{'name': 'nidorino', 'id': 33}]
我想问我的用户...
input('Which pokemon do you choose? ')
...然后 return/print 用户输入和名称匹配的字典。
例如,如果输入是'kabuto',那么这是returned/printed:
'name': 'kabuto', 'id': 140
这是possible/what最好的方法吗?
您可以使用 for
循环:
for item in data:
if item['name'] == 'kabuto':
print(item)
break
这输出:
{'name': 'kabuto', 'id': 140}
可以使用这种方式使用过滤器:
pokemons = [{'name': 'kabuto', 'id': 140},
{'name': 'articuno', 'id': 144},
{'name': 'nidorino', 'id': 33}]
pokemon = list(filter(lambda p : p['name'] == "kabuto", pokemons))[0]
print(pokemon)
我有一个这样的字典列表:
[{'name': 'kabuto', 'id': 140},
{'name': 'articuno', 'id': 144},
{'name': 'nidorino', 'id': 33}]
我想问我的用户...
input('Which pokemon do you choose? ')
...然后 return/print 用户输入和名称匹配的字典。
例如,如果输入是'kabuto',那么这是returned/printed:
'name': 'kabuto', 'id': 140
这是possible/what最好的方法吗?
您可以使用 for
循环:
for item in data:
if item['name'] == 'kabuto':
print(item)
break
这输出:
{'name': 'kabuto', 'id': 140}
可以使用这种方式使用过滤器:
pokemons = [{'name': 'kabuto', 'id': 140},
{'name': 'articuno', 'id': 144},
{'name': 'nidorino', 'id': 33}]
pokemon = list(filter(lambda p : p['name'] == "kabuto", pokemons))[0]
print(pokemon)