基于两个嵌套列表的字典一一对应列表

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}]