首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何按顺序合并python3中的三个词典列表

如何按顺序合并python3中的三个词典列表
EN

Stack Overflow用户
提问于 2019-11-21 09:57:26
回答 1查看 38关注 0票数 1

在Python3中,我有一个问题,要找到将这三个列表合并为一个列表的方法。

代码语言:javascript
运行
复制
list1 = [{'a': '1'}, {'a': '2'}, {'a': '3'}]
list2 = [{'b': '4'}, {'b': '5'}, {'b': '6'}]
list3 = [{'c': '7'}, {'c': '8'}, {'c': '9'}]

我想做的是得到一份新的清单,例如:

代码语言:javascript
运行
复制
list4 = [{'a': '1', 'b': '4', 'c': '7'}, {'a': '2', 'b': '5', 'c': '8'}, {'a': '3', 'b': '6', 'c': '9'}]

有什么毕达通的方法来做这个手术吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-21 10:00:39

在一个组合列表中使用zip

代码语言:javascript
运行
复制
>>> list1 = [{'a': '1'}, {'a': '2'}, {'a': '3'}]
>>> list2 = [{'b': '4'}, {'b': '5'}, {'b': '6'}]
>>> list3 = [{'c': '7'}, {'c': '8'}, {'c': '9'}]
>>> [{k: d[k] for d in ds for k in d} for ds in zip(list1, list2, list3)]
[{'a': '1', 'b': '4', 'c': '7'},
 {'a': '2', 'b': '5', 'c': '8'},
 {'a': '3', 'b': '6', 'c': '9'}]

如果dicts包含多个值,也可以工作。如果一个“列”中的dicts包含相同的键,则后面列表中的值将覆盖前者。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58972043

复制
相关文章

相似问题

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