如何将一个列表作为一个新项目(python)加入到列表字典中?

如何将一个列表作为一个新项目(python)加入到列表字典中?,python,list,dictionary,Python,List,Dictionary,也许一个简单的问题: 在python中,我有一个字典列表,我想在列表中的每个字典中添加一个列表作为新项 例如,我有字典列表: list_dict =[{'id':1, 'text':'John'}, {'id':2, 'text':'Amy'}, {'id':3, 'text':'Ron'}] list_dict =[{'id':1, 'text':'John', 'age':23}, {'id':2, 'text':'A

也许一个简单的问题:

在python中,我有一个字典列表,我想在列表中的每个字典中添加一个列表作为新项

例如,我有字典列表:

list_dict =[{'id':1, 'text':'John'},
            {'id':2, 'text':'Amy'},
            {'id':3, 'text':'Ron'}]
list_dict =[{'id':1, 'text':'John', 'age':23},
            {'id':2, 'text':'Amy', 'age':54},
            {'id':3, 'text':'Ron', 'age':41}]
和一份清单:

list_age = [23, 54, 41]
然后如何添加列表以生成词典列表:

list_dict =[{'id':1, 'text':'John'},
            {'id':2, 'text':'Amy'},
            {'id':3, 'text':'Ron'}]
list_dict =[{'id':1, 'text':'John', 'age':23},
            {'id':2, 'text':'Amy', 'age':54},
            {'id':3, 'text':'Ron', 'age':41}]
我不确定这里使用的代码是否正确?

使用zip,迭代匹配对并更新dicts:

>>> for d, a in zip(list_dict, list_age):
...     d["age"] = a
... 
>>> list_dict
[{'id': 1, 'text': 'John', 'age': 23}, {'id': 2, 'text': 'Amy', 'age': 54}, {'id': 3, 'text': 'Ron', 'age': 41}]
使用zip迭代匹配对并更新DICT:

>>> for d, a in zip(list_dict, list_age):
...     d["age"] = a
... 
>>> list_dict
[{'id': 1, 'text': 'John', 'age': 23}, {'id': 2, 'text': 'Amy', 'age': 54}, {'id': 3, 'text': 'Ron', 'age': 41}]
如果list_age和list_dict的长度相同,请尝试此循环:

for i, j in zip(list_dict, list_age):
  i['age']=j
输出:

如果list_age和list_dict的长度相同,请尝试此循环:

for i, j in zip(list_dict, list_age):
  i['age']=j
输出:


像这样的东西可能有用

for index, item in enumerate(list_age):
  list_dict[index]['age'] = item
编辑:
如前所述,您应该确保lenlist年龄不大于lenlist dict。

类似的方法可以工作

for index, item in enumerate(list_age):
  list_dict[index]['age'] = item
编辑:
如前所述,您应该确保lenlist年龄不大于lenlist dict。

添加列表以生成词典列表:

list_dict =[{'id':1, 'text':'John'},
            {'id':2, 'text':'Amy'},
            {'id':3, 'text':'Ron'}]
list_dict =[{'id':1, 'text':'John', 'age':23},
            {'id':2, 'text':'Amy', 'age':54},
            {'id':3, 'text':'Ron', 'age':41}]
对于ziplist dict中的a、b,请列出英语标记: a[英国马克]=b 打印列表 输出:

[{'id':1,'name':'mari','englishmark':80},{'id':2,'name':'Arun','englishmark':54},{'id':3,'name':'ram','englishmark':75}]


添加列表以生成词典列表:

list_dict =[{'id':1, 'text':'John'},
            {'id':2, 'text':'Amy'},
            {'id':3, 'text':'Ron'}]
list_dict =[{'id':1, 'text':'John', 'age':23},
            {'id':2, 'text':'Amy', 'age':54},
            {'id':3, 'text':'Ron', 'age':41}]
对于ziplist dict中的a、b,请列出英语标记: a[英国马克]=b 打印列表 输出:

[{'id':1,'name':'mari','englishmark':80},{'id':2,'name':'Arun','englishmark':54},{'id':3,'name':'ram','englishmark':75}]


对为什么其他人都在使用zip,我不明白,因为这是goYeah更直观的方法,我也发现enumerate是一个更简单的解决方案。是的,这是一个很好的解决方案。请注意,您正在修改列表,因此大小应从此处开始。在使用zip时,如果对列表的迭代已耗尽,它将停止,在该解决方案中,如果列表只多出一个大项,则可能会出现索引错误。是!为什么其他人都在使用zip,我不明白,因为这是goYeah更直观的方法,我也发现enumerate是一个更简单的解决方案。是的,这是一个很好的解决方案。请注意,您正在修改列表,因此大小应从此处开始。在使用zip时,如果对列表的迭代已耗尽,它将停止。在该解决方案中,如果列表只多出一个项目,则可能会出现索引错误。这看起来与一个多月前发布的其他三个答案基本相同。我不明白这是什么adds@jdd我指的是这个问题的其他答案。可能不是公认的答案,但肯定是另外两个答案。这看起来与一个多月前发布的其他三个答案基本相同。我不明白这是什么adds@jdd我指的是这个问题的其他答案。可能不是公认的答案,但肯定是另外两个答案。