Python 如何在数组中追加下一个dict

Python 如何在数组中追加下一个dict,python,dictionary,Python,Dictionary,我通过从设备获取值来构建dict。 我想通过在“c”中添加一个新项来继续添加新的dict。 如何在数组中追加新dict: dict1 = { 'a': 1, 'b': 2, 'c': [{'aa': 11, 'bb': 22}]} newvalue = {'aa': 111, 'bb': 222} dict1['c'] = dict1['c'] + newvalue End results: dict1 = { 'a': 1, 'b': 2, 'c': [{'aa': 11, 'bb': 22

我通过从设备获取值来构建dict。 我想通过在“c”中添加一个新项来继续添加新的dict。 如何在数组中追加新dict:

dict1 = {
'a': 1,
'b': 2,
'c': [{'aa': 11, 'bb': 22}]}
newvalue = {'aa': 111, 'bb': 222}
dict1['c'] = dict1['c'] + newvalue

End results:
dict1 = {
'a': 1,
'b': 2,
'c': [{'aa': 11, 'bb': 22},{'aa': 111, 'bb': 222}}

如何使用forloop追加?

这个问题的诀窍是理解对象类型

让我们尝试查找
dict1['c']
的类型,因为这是我们试图添加到的类型:

print(type(dict1['c']))
<class 'list'>

嘿,普雷斯托!这正是我们所要寻找的。

为了详细说明jpp的最佳答案,它确实在for循环中工作(下面的代码通常会有一个索引,而不是简单的“newvalue”)

结果:

{'a': 1, 'b': 2, 'c': [{'aa': 11, 'bb': 22}, {'aa': 111, 'bb': 222}]}

dict1['c'].append(newvalue)
…?您所做的已经起作用了。如果在
for
循环中生成一组
newvalue
值,则可以使用与添加这些值完全相同的代码。如果要将newvalue添加到dict['c'],如何添加newvalue不起作用。在这里,我编码我累了:
为k,v在dict1['c'][0]。iteritems():dict1['c'].append(v)print dict1
谢谢JPP它很好:问题:例如:在一个forloop中,我找到了一个值,需要添加到键:“aa”,所以我做了>
dict1['c'][0][“aa”=333
dict1['c'][0][bb]=444
现在如何将这两个元素添加到dict的conituing数组中?@netkool,对不起,不清楚您在做什么。在您的注释中,您正在分别为键
aa
bb
更改字典键(特别是第一个字典)的值。这与添加元素无关。
dict1['c'].append(newvalue)

print(dict1)

{'a': 1,
 'b': 2,
 'c': [{'aa': 11, 'bb': 22},
       {'aa': 111, 'bb': 222}]}
newvalue = {'aa': 111, 'bb': 222}

dict1 = {
'a': 1,
'b': 2,
'c': [{'aa': 11, 'bb': 22}]}

for i in range(1):
    dict1['c'].append(newvalue)
print(dict1)
{'a': 1, 'b': 2, 'c': [{'aa': 11, 'bb': 22}, {'aa': 111, 'bb': 222}]}