在python中的词典列表中搜索和更新词典

2024-09-30 22:13:33 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我知道:Python list of dictionaries search

回答我问题的第一部分。你知道吗

然而,我的问题是:我想直接更新搜索到的字典,而不是简单地检索它。你知道吗

更具体地说,我有一个字典列表。每个字典都有一个“list”键,其值是另一个list。我一找到字典就想更新那张单子。你知道吗

每个词典的结构如下: {“name”:“whatever”,“display”:“wherever”,“list”:[x,y,z]}

举个例子:

[
    {"name": "whatever", "display":"whoever", "list": [x, y, z]},
    {"name": "whatever2", "display":"whoever2", "list": [x2, y2, z2]},
    {"name": "whatever3", "display":"whoever3", "list": [x3, y3, z3]}
]

我想检索,比方说,名为“whatever2”的词典,并将a2添加到“列表”中。你知道吗

最好的方法是什么?你知道吗

“最佳”可以是“python性”/“性能”/代码清晰度等


Tags: ofname列表search字典display结构list
1条回答
网友
1楼 · 发布于 2024-09-30 22:13:33
L = [
    {"name": "whatever", "display":"whoever", "list": [x, y, z]},
    {"name": "whatever2", "display":"whoever2", "list": [x2, y2, z2]},
    {"name": "whatever3", "display":"whoever3", "list": [x3, y3, z3]}
]

for d in L:
    if d['name'] != 'whatever2': continue
    d['list'].append('a2')
    break  # unless you could have multiple dictionaries in your list with the same name

相关问题 更多 >