首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >与Python中的字典列表相关

与Python中的字典列表相关
EN

Stack Overflow用户
提问于 2018-07-23 06:04:05
回答 1查看 82关注 0票数 2

我有两个包含字典的列表:

代码语言:javascript
复制
List1 = [{"Value": "Value1", "Start": 7.11, "End": 8},
         {"Value": "Value2", "Start": 16.45, "End": 20}]

List2 = [{"From":7.11, "To": 8, "Result": 0},
         {"From":16.45, "To": 20 "Result": 1}
        ]

我需要通过关联这些列表来生成一个列表。所以结果将会是

代码语言:javascript
复制
Result = [{"Value": "Value1", "Start": 7.11, "End": 8, Result: 0},
         {"Value": "Value2", "Start": 16.45, "End": 20,Result: 1}]

这看起来就像SQL中的简单表连接。

我该如何在Python中做到这一点?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-23 06:07:16

您可以使用嵌套字典理解:

代码语言:javascript
复制
List1 = [{"Value": "Value1", "Start": 7.11, "End": 8},
 {"Value": "Value2", "Start": 16.45, "End": 20}]

List2 = [{"From":7.11, "To": 8, "Result": 0},
 {"From":16.45, "To": 20, "Result": 1}
]

new_list = [{**a, **{'Result':b['Result']}} for a, b in zip(List1, List2)]

输出:

代码语言:javascript
复制
[{'Value': 'Value1', 'Start': 7.11, 'End': 8, 'Result': 0}, {'Value': 'Value2', 'Start': 16.45, 'End': 20, 'Result': 1}]

由于字典解包(**)只是Python3中的一项功能,因此您可以在Python2中使用dict.items

代码语言:javascript
复制
new_list = [dict(a.items()+[('Result', b['Result'])]) for a, b in zip(List1, List2)]

输出:

代码语言:javascript
复制
[{'Start': 7.11, 'End': 8, 'Result': 0, 'Value': 'Value1'}, {'Start': 16.45, 'End': 20, 'Result': 1, 'Value': 'Value2'}]
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51469622

复制
相关文章

相似问题

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