首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python:我想用二维列表制作一本字典

python:我想用二维列表制作一本字典
EN

Stack Overflow用户
提问于 2022-02-02 08:04:54
回答 1查看 44关注 0票数 0

我想用两个二维的列表来做一个包含两个字典的单子列表。请注意,每个元素都必须与第二个列表的元素配对。

代码语言:javascript
复制
a = [[1,2,3],[4,5,6]]
b = [[7,8,9],[10,11,12]]
c = dict(zip(a,b))

由于列表不可散列,因此无法工作。那我就需要输出

代码语言:javascript
复制
 c = [{1:7, 2:8, 3:9}, {4:10, 5:11, 6:12}]
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-02 08:12:23

你想要的东西如下:

代码语言:javascript
复制
c = [dict(zip(keys, vals)) for keys, vals in zip(a, b)]

在这里,我们使用列表理解来对原始列表ab中的每个内部列表进行压缩和转换为dict。

或者,我们可以进一步平复理解,以获得:

代码语言:javascript
复制
c = [{k: v for k, v in zip(keys, vals)} for keys, vals in zip(a, b)]

两者是等同的,这只是一个风格的问题。

输出:

代码语言:javascript
复制
>>> print(c)
[{1: 7, 2: 8, 3: 9}, {4: 10, 5: 11, 6: 12}]
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70952212

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档