如何使用字典推导创建一个空的三重嵌套字典?



我有三个列表,我想使用字典推导将它们作为空三重嵌套字典的键。"Facility"是外键,"产品"是中间键,"客户"是内键。我该怎么做呢?提前感谢

这是我需要做成键的列表:

Facility = ['Fac-1', 'Fac-2','Fac-3','Fac-4','Fac-5']  
Products = ['45906','48402','80591','102795','107275','128067','129522',]  
Customer = ["Apple","Samsung","Huawei","Nokia","Motorolla"]

如果你说的是空字典,你的意思是有空的lists作为值。

可以使用dict推导式:

>>> d = {f: {p: {c: [] for c in Customer} for p in Products} for f in Facility}

然后你将得到你描述的数据结构:

>>> d
{'Fac-1': {'102795': {'Apple': [], ...}, ...},
'Fac-2': {'102795': {'Apple': [], ...}, ...},
...}
>>> d.keys()
dict_keys(['Fac-1', 'Fac-2', 'Fac-3', 'Fac-4', 'Fac-5'])
>>> d['Fac-1'].keys()
dict_keys(['45906', '48402', '80591', '102795', '107275', '128067', '129522'])
>>> d['Fac-1']['45906'].keys()
dict_keys(['Apple', 'Samsung', 'Huawei', 'Nokia', 'Motorolla'])

最新更新