我正在尝试创建一个list
dicts
,其结构如下:
[
{
'id': '234nj233nkj2k4n52',
'embedded_list': []
},
{
'id': 'jb234bhj23423h4b4',
'embedded_list': []
},
...
]
最初,此列表将为空。
我需要做的是:
dict
的{{1}} id
的字典,请在其id
embedded_list
的词典不存在,请创建一个词典,将其附加到列表中。我知道能够根据id
内部的内容使用以下内容测试dict
中是否存在list
:
dict
我不确定如何有效地在extracted_dict = next((item for item in list if item['id'] == unique_id), None)
内list
内dict
附加某些内容。是否有一种我没有看到的明显方式(可能)?
提前谢谢。
答案 0 :(得分:4)
您的数据结构首先应该是字典词典:
{'234nj233nkj2k4n52': {'embedded_list': []},
'jb234bhj23423h4b4': {'embedded_list': []},
... }
这将使您所需的所有操作更加轻松。如果内部词典仅包含嵌入列表,则可以进一步简化为
{'234nj233nkj2k4n52': [],
'jb234bhj23423h4b4': [],
... }
现在,您只需要collections.defaultdict(list)
:
from collections import defaultdict
d = defaultdict(list)
d['234nj233nkj2k4n52'].append(whatever)
答案 1 :(得分:1)
或只是一个简单的dic
{
'234nj233nkj2k4n52' : [],
'jb234bhj23423h4b4' : []
}