Python list append only 字典

Python list append only dictionary

我有 2 部词典,其中包含如下数据:


item1 = {'data': [{'a': 11, 'b': 22}, {'c': 33, 'd': 44}]}

item2 = {'data': [{'e': 55, 'f': 66}, {'g': 77, 'h': 88}]}

我只想将 item1['data']item2['data'] 添加到单个列表中,我该如何添加?我的预期列表是

[{'a': 11, 'b': 22}, {'c': 33, 'd': 44}, {'e': 55, 'f': 66}, {'g': 77, 'h': 88}]

您可以解压列表。

>>> item1 = {'data': [{'a': 11, 'b': 22}, {'c': 33, 'd': 44}]}
>>> item2 = {'data': [{'e': 55, 'f': 66}, {'g': 77, 'h': 88}]}
>>>
>>> [*item1['data'], *item2['data']]
[{'a': 11, 'b': 22}, {'c': 33, 'd': 44}, {'e': 55, 'f': 66}, {'g': 77, 'h': 88}]

或者,您可以使用list.extend方法。

>>> result = item1['data'].copy()
>>> result
[{'a': 11, 'b': 22}, {'c': 33, 'd': 44}]
>>> result.extend(item2['data'])
>>> result
[{'a': 11, 'b': 22}, {'c': 33, 'd': 44}, {'e': 55, 'f': 66}, {'g': 77, 'h': 88}]

多种方式中的2种:

item1 = {'data': [{'a': 11, 'b': 22}, {'c': 33, 'd': 44}]}

item2 = {'data': [{'e': 55, 'f': 66}, {'g': 77, 'h': 88}]}
outlist = item1['data']+item2['data']
print (outlist)

item1 = {'data': [{'a': 11, 'b': 22}, {'c': 33, 'd': 44}]}

item2 = {'data': [{'e': 55, 'f': 66}, {'g': 77, 'h': 88}]}
outlist = []
for d in item1['data']:
    outlist.append(d)
for d in item2['data']:
    outlist.append(d)
print (outlist)

输出:

[{'a': 11, 'b': 22}, {'c': 33, 'd': 44}, {'e': 55, 'f': 66}, {'g': 77, 'h': 88}]

你可以试试这个:

item1 = {'data': [{'a': 11, 'b': 22}, {'c': 33, 'd': 44}]}

item2 = {'data': [{'e': 55, 'f': 66}, {'g': 77, 'h': 88}]}

final = item1.get('data', '') + item2.get('data', '')

print(final)

输出:

[{'a': 11, 'b': 22}, {'c': 33, 'd': 44}, {'e': 55, 'f': 66}, {'g': 77, 'h': 88}]

这也是使用for循环完成的。

item1 = {'data': [{'a': 11, 'b': 22}, {'c': 33, 'd': 44}]}
item2 = {'data': [{'e': 55, 'f': 66}, {'g': 77, 'h': 88}]}
for item in item2['data']:
    item1['data'].append(item)
print(item1['data'])

试试这个脚本:

a=[]
item1 = {'data': [{'a': 11, 'b': 22}, {'c': 33, 'd': 44}]}
item2 = {'data': [{'e': 55, 'f': 66}, {'g': 77, 'h': 88}]}

for i in range(0,2):

    var1=item1['data'][i]
    a.append(var1)

for i in range(0, 2):
    var1 = item2['data'][i]
    a.append(var1)

print(a)