基于两个嵌套列表的字典一一对应列表
One-to-one correspondence list of dictionaries based on two nested list
我有两个嵌套列表:
a = [[0, 1],[1, 0],[2, 0]]
b = [[2, 1],[1, 3],[8, 1]]
我想要一个字典列表,这样列表 a
的每个内部元素(作为键)对应于它的列表 b
的内部元素(作为值)。
这是我想要的输出:
[{0:2,1:1},{1:1,0:3},{2:8,0:1}]
我试过:
ls = []
for i in a:
for j in b:
ls.append({k:v for k,v in zip(i, j)})
print(ls)
但它给了我所有我不想要的可能组合。感谢任何帮助。
您使用列表理解和 zip
。
>>> a = [[0, 1],[1, 0],[2, 0]]
>>> b = [[2, 1],[1, 3],[8, 1]]
>>> [dict(zip(i, j)) for i, j in zip(a, b)]
[{0: 2, 1: 1}, {1: 1, 0: 3}, {2: 8, 0: 1}]
我有两个嵌套列表:
a = [[0, 1],[1, 0],[2, 0]]
b = [[2, 1],[1, 3],[8, 1]]
我想要一个字典列表,这样列表 a
的每个内部元素(作为键)对应于它的列表 b
的内部元素(作为值)。
这是我想要的输出:
[{0:2,1:1},{1:1,0:3},{2:8,0:1}]
我试过:
ls = []
for i in a:
for j in b:
ls.append({k:v for k,v in zip(i, j)})
print(ls)
但它给了我所有我不想要的可能组合。感谢任何帮助。
您使用列表理解和 zip
。
>>> a = [[0, 1],[1, 0],[2, 0]]
>>> b = [[2, 1],[1, 3],[8, 1]]
>>> [dict(zip(i, j)) for i, j in zip(a, b)]
[{0: 2, 1: 1}, {1: 1, 0: 3}, {2: 8, 0: 1}]