Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 词典中的合并与求和_Python 3.x - Fatal编程技术网

Python 3.x 词典中的合并与求和

Python 3.x 词典中的合并与求和,python-3.x,Python 3.x,我想将这两本词典合并为: let_col= {'t': ['black', 'golden', 'silver'], 'f': ['blue', 'green'], 's': ['grey', 'yellow'], 'k': ['red', 'purple']} col_pix = {'blue':150,'red':200,'green':160,'grey':240,'purple':210,'black':140,'yellow':120,'golden':130,'silver':20

我想将这两本词典合并为:

let_col= {'t': ['black', 'golden', 'silver'], 'f': ['blue', 'green'], 's': ['grey', 'yellow'], 'k': ['red', 'purple']}

col_pix = {'blue':150,'red':200,'green':160,'grey':240,'purple':210,'black':140,'yellow':120,'golden':130,'silver':200}

然后我必须为每个字母添加总像素。有人能帮我吗?我尝试了很多事情,但还是做不到。谢谢

我希望我能正确理解你的问题,此脚本将合并词典,并在每个字母中添加键
total\u sum

let_col_pixels = {'t': ['black':140, 'golden':130, 'silver':200],'f':[] ....}
印刷品:

let_col= {'t': ['black', 'golden', 'silver'], 'f': ['blue', 'green'], 's': ['grey', 'yellow'], 'k': ['red', 'purple']}
col_pix = {'blue':150,'red':200,'green':160,'grey':240,'purple':210,'black':140,'yellow':120,'golden':130,'silver':200}

out = {k: dict(**v, total_sum=sum(v.values())) for k, v in {k:{vv: col_pix[vv] for vv in v}  for k, v in let_col.items()}.items()}

from pprint import pprint
pprint(out)

谢谢你的回答。首先,我必须创建这样一个字典:{f':{blue':150,'green':160},'k':{'purple':210,'red':200},'s':{'grey':240,'yellow':120},'t':{'black':140,'golden':130,'silver':200},然后我必须创建一个字典:let_pix={f':total pix'}要回答诸如“哪个字母的像素最多”之类的问题,您好,您能给出您尝试过的代码示例吗?
{'f': {'blue': 150, 'green': 160, 'total_sum': 310},
 'k': {'purple': 210, 'red': 200, 'total_sum': 410},
 's': {'grey': 240, 'total_sum': 360, 'yellow': 120},
 't': {'black': 140, 'golden': 130, 'silver': 200, 'total_sum': 470}}