我有两个列表,我想将它们合并为字典列表。
我的密码是:
import pprint
list1 = [1, 2, 3, 4]
list2 = [0, 1, 1, 2]
newlist = []
for i in range(0, len(list1)):
newdict = {}
newdict["original"] = list1[i]
newdict["updated"] = list2[i]
newlist.append(newdict)
pprint.pprint(newlist)
输出:
[{'original': 1, 'updated': 0},
{'original': 2, 'updated': 1},
{'original': 3, 'updated': 1},
{'original': 4, 'updated': 2}]
有更好或更快的方法来做这件事吗?
最佳答案
您可以zip您的两个列表,然后使用列表理解,在这里您可以将字典创建为列表中的每个项:
list1=[1,2,3,4]
list2=[0,1,1,2]
new_list = [{'original': v1, 'updated': v2} for v1, v2 in zip(list1, list2)]
print(new_list)
输出:
[{'updated': 0, 'original': 1}, {'updated': 1, 'original': 2}, {'updated': 1, 'original': 3}, {'updated': 2, 'original': 4}]
关于python - 有效地将列表合并到词典列表中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36612437/