如何从键列表和值列表创建字典列表

2024-04-20 01:36:29 发布

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

如何从现有的键和值列表创建字典字典

celebr = ['Tony','Harry','Katty','Sam']
perc = [69,31,0,0]

d = dict(zip(celebr, perc))
dlist = []
for i in d.items():
    dlist.append(i)    
print(dlist)

输出:

[('Tony': 69), ('Harry': 31), ('Katty': 0), ('Sam': 0)]

当我使用d.items时,它会自动给我元组,而不是字典。有没有办法创建字典列表,而不是元组

我需要得到以下结构:

[{'Tony': 69}, {'Harry': 31}, {'Katty': 0}, {'Sam': 0}]

Tags: in列表for字典samitemszipdict
3条回答

{a1}的良好用例:

dlist = [{k: v} for k, v in zip(celebr, perc)]

输出:

>>> celebr = ['Tony', 'Harry', 'Katty', 'Sam']
>>> perc = [69, 31, 0, 0]
>>>
>>> [{k: v} for k, v in zip(celebr, perc)]
[{'Tony': 69}, {'Harry': 31}, {'Katty': 0}, {'Sam': 0}]

这够了吗

celebr = ['Tony','Harry','Katty','Sam']
perc = [69,31,0,0]

dlist = []

for i, j in zip(celebr, perc):
    dlist.append({i: j})

print dlist

您可以使用zipdict实现

dict(zip(celebr,perc))

结果:

In [14]: celebr = ['Tony', 'Harry', 'Katty', 'Sam'] 
In [15]: perc = [69, 31, 0, 0]

In [16]: dict(zip(celebr,perc))
Out[16]: {'Harry': 31, 'Katty': 0, 'Sam': 0, 'Tony': 69}

相关问题 更多 >