首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何向列表中的字典添加值?

如何向列表中的字典添加值?
EN

Stack Overflow用户
提问于 2021-04-24 13:23:20
回答 5查看 51关注 0票数 1

我有一个清单,里面有一本字典,看上去如下:

代码语言:javascript
复制
myList = [{'key-1': 'a', 'key-2': 10}, 
    {'key-1': 'b', 'key-2': 20}]

现在,我想在列表的每一项中添加一个新的键和值。为此,我有一个列表,如下所示:

代码语言:javascript
复制
new = [50,100]

如何将添加到myList中,看起来如下:

代码语言:javascript
复制
mynewlist = [{'key-1': 'a', 'key-2': 10, 'key-3':50}, 
    {'key-1': 'b', 'key-2': 20, 'key-3':100}]

我非常感谢你的帮助!

EN

回答 5

Stack Overflow用户

发布于 2021-04-24 13:33:37

让我们尝试使用list comprehensiondict解压缩,如果您不想修改myList就地的现有字典。

代码语言:javascript
复制
[{**d, 'key-3': v} for d, v in zip(myList, new)]

代码语言:javascript
复制
[{'key-1': 'a', 'key-2': 10, 'key-3': 50},
 {'key-1': 'b', 'key-2': 20, 'key-3': 100}]
票数 3
EN

Stack Overflow用户

发布于 2021-04-24 13:45:05

代码语言:javascript
复制
myList = [{'key-1': 'a', 'key-2': 10}, 
    {'key-1': 'b', 'key-2': 20}]

new = [50,100]

for i in range(len(myList)):
  myList[i]['key-3'] = new[i]

myList

不:

代码语言:javascript
复制
[{'key-1': 'a', 'key-2': 10, 'key-3': 50},
 {'key-1': 'b', 'key-2': 20, 'key-3': 100}]
票数 2
EN

Stack Overflow用户

发布于 2021-04-24 13:26:45

详情如下:

代码语言:javascript
复制
c = [
    {'key-1': 'a', 'key-2': 10}, 
    {'key-1': 'b', 'key-2': 20}]
new_values = [50, 100]
for d, value in zip(c, new_values):
    d['key-3'] = value
print(c)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67243245

复制
相关文章

相似问题

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