【发布时间】:2017-08-11 09:57:53
【问题描述】:
在lambda的帮助下将两个“简单”字典相乘的问题,我决定如下:
v1={'product1': '100', 'product2': '120'}
v2={'product1': '3', 'product2': '2'}
foo = lambda dct_1, dct_2: {key: int(dct_2[key]) * int(dct_1[key]) for key in dct_2}
foo(v1, v2)
# Out: {'product1': 300, 'product2': 240}
如何以相同的方式将两个嵌套字典相乘?
V={'id1': [{'product1': '1', 'product2': '2'}],'id2': [{'product1': '3', 'product2': '4'}]}
Z={'id1': [{'благо1': '10', 'благо2': '25'}], 'id2': [{'product1': '20', 'product2': '15'}]}
答案应该如下:
Out:={'id1': [{'product1': '10', 'product2': '50'}], 'id2': [{'product1': '60', 'product2': '60'}]}
我正在使用 Python3。
【问题讨论】:
-
为什么 V、Z 中有列表?它们不是这样嵌套的字典
-
这是合乎逻辑的......也许不是完全嵌套。
标签: python dictionary lambda compression list-comprehension