首页 > 解决方案 > 最佳实践/获取价值的方法,其中 id = 字典列表中的内容

问题描述

我有以下字典列表:

[{'id': 360004373520, 'value': something1}, {'id': 360004411159, 'value': something2}, {'id': 360004373540, 'value': something}]

我想获得 id = xxxxxxxxxxxx 的值。

哪种方式最快?

标签: pythonlistdictionary

解决方案


一种可能的解决方案是使用next()内置方法:

lst = [
    {"id": 360004373520, "value": "something1"},
    {"id": 360004411159, "value": "something2"},
    {"id": 360004373540, "value": "something"},
]

to_search = 360004411159

value = next(d["value"] for d in lst if d["id"] == to_search)
print(value)

印刷:

something2

或者:如果您搜索多次,值得考虑将列表转换为字典:

to_search = 360004411159


dct = {d["id"]: d["value"] for d in lst}
print(dct[to_search])

推荐阅读