加入由单独函数返回的字典,并将字典作为另一个字典中的值分配。
问题描述:
我有3个函数,每个函数都返回一个字典。字典看起来如下。我想把这三本词典连成一本巨型词典。然后传递这个字典作为一个值,并给它一个名为'result'的键。加入由单独函数返回的字典,并将字典作为另一个字典中的值分配。
get_energy()返回此:
{ '能量':{ 'biggest_gainer':{ '公平': '麦克德莫特国际', '变': '5.31%'}, 'biggest_loser':{”股权 ': '比尔·巴雷特公司', '变': '-13.18%'}, '变': '-1.48%'}}
get_materials()返回此:
{' 基础材料:{'equity':'Gold Fields Limited(ADR)','change':'3.22%'},'largest_loser':{'equity':'Jaguar Mining Inc(USA)','change ':'-5.85%'},'change':'-0.35%'}}
个get_industrials()返回此:
{ '工业':{ 'biggest_gainer':{ '公平': 'LML支付系统公司', '变': '633.43%'}, 'biggest_loser': { '公平': '芝加哥桥梁钢铁&有限公司', '变': '-12.07%'}, '变': '-0.46%'}}
最终的字典应该是这样的:
{result:{'Energy': {'biggest_gainer': {'equity': 'McDermott International', 'change': '5.31%'}, 'biggest_loser': {'equity': 'Bill Barrett Corporation', 'change': '-13.18%'}, 'change': '-1.48%'}},
{'Basic Materials': {'biggest_gainer': {'equity': 'Gold Fields Limited (ADR)', 'change': '3.22%'}, 'biggest_loser': {'equity': 'Jaguar Mining Inc (USA)', 'change': '-5.85%'}, 'change': '-0.35%'}},
{'industrials': {'biggest_gainer': {'equity': 'LML Payment Systems, Inc.', 'change': '633.43%'}, 'biggest_loser': {'equity': 'Chicago Bridge & Iron Co', 'change': '-12.07%'}, 'change': '-0.46%'}}}
答
您可以将三个较小的字典解压缩到一个大字典中。
result = {**get_energy(), **get_materials(), **get_industrials()}
即相当于:
{
"Energy": {
"biggest_gainer": {
"equity": "McDermott International",
"change": "5.31%"
},
"biggest_loser": {
"equity": "Bill Barrett Corporation",
"change": "-13.18%"
},
"change": "-1.48%"
},
"Basic Materials": {
"biggest_gainer": {
"equity": "Gold Fields Limited (ADR)",
"change": "3.22%"
},
"biggest_loser": {
"equity": "Jaguar Mining Inc (USA)",
"change": "-5.85%"
},
"change": "-0.35%"
},
"industrials": {
"biggest_gainer": {
"equity": "LML Payment Systems, Inc.",
"change": "633.43%"
},
"biggest_loser": {
"equity": "Chicago Bridge & Iron Co",
"change": "-12.07%"
},
"change": "-0.46%"
}
}