我想用两个二维的列表来做一个包含两个字典的单子列表。请注意,每个元素都必须与第二个列表的元素配对。
a = [[1,2,3],[4,5,6]]
b = [[7,8,9],[10,11,12]]
c = dict(zip(a,b))由于列表不可散列,因此无法工作。那我就需要输出
c = [{1:7, 2:8, 3:9}, {4:10, 5:11, 6:12}]发布于 2022-02-02 08:12:23
你想要的东西如下:
c = [dict(zip(keys, vals)) for keys, vals in zip(a, b)]在这里,我们使用列表理解来对原始列表a和b中的每个内部列表进行压缩和转换为dict。
或者,我们可以进一步平复理解,以获得:
c = [{k: v for k, v in zip(keys, vals)} for keys, vals in zip(a, b)]两者是等同的,这只是一个风格的问题。
输出:
>>> print(c)
[{1: 7, 2: 8, 3: 9}, {4: 10, 5: 11, 6: 12}]https://stackoverflow.com/questions/70952212
复制相似问题