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}}