我有三个列表和每个列表的三个键,并且想将它们转换为字典列表。
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
list3 = [5.0, 6.0, 7.0]
keys = ['key1', 'key2', 'key3']
我的预期输出是这样的,
[[{'key1': 1, 'key2': 'a', 'key3': 5.0}],
[{'key1': 2, 'key2': 'b', 'key3': 6.0}],
[{'key1': 3, 'key2': 'c', 'key3': 7.0}]]
实现此输出的最 Pythonic 方法是什么?
最佳答案
尝试:
list1 = [1, 2, 3]
list2 = ["a", "b", "c"]
list3 = [5.0, 6.0, 7.0]
keys = ["key1", "key2", "key3"]
out = []
for t in zip(list1, list2, list3):
out.append([dict(zip(keys, t))])
print(out)
打印:
[[{'key1': 1, 'key2': 'a', 'key3': 5.0}],
[{'key1': 2, 'key2': 'b', 'key3': 6.0}],
[{'key1': 3, 'key2': 'c', 'key3': 7.0}]]
或者:
out = [[dict(zip(keys, t))] for t in zip(list1, list2, list3)]
print(out)
关于python - 将列表合并到字典列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67895788/