我有两本词典。 其中包含不同的产品以及对它们的每种需求。 另一个包含多天的时间需求分布值。
我需要附加两个字典的键,并将需求乘以时间需求分布。
示例数据(实际数据要大得多):
dict = {'S-NSW-BAC-ENG': 15, 'S-NSW-BAC-FBE': 30}
temporal_demand_distibution = {-60: 0.001187, -59: 0.001354}
预期的输出类似于:
resulting_dict = {'S-NSW-BAC-ENG:-60': 0.001187*15, 'S-NSW-BAC-ENG:-59': 0.001354*15, 'S-NSW-BAC-FBE:-60': 30*0.001187, 'S-NSW-BAC-FBE:-59': 30*0.001354}
这些值显然是乘法的结果,而不是乘法本身。
我知道在没有示例代码的情况下发布问题是不好的,但我不知道如何实现这一点。
最佳答案
使用双 for 循环并组合键和值:
from pprint import pprint
dict = {'S-NSW-BAC-ENG': 15, 'S-NSW-BAC-FBE': 30}
temporal_demand_distribution = {-60: 0.001187, -59: 0.001354}
result_dict = {}
for key, value in dict.items():
for key2, value2 in temporal_demand_distribution.items():
result_dict["{}:{}".format(key, key2)] = value * value2
pprint(result_dict)
{'S-NSW-BAC-ENG:-59': 0.020309999999999998, 'S-NSW-BAC-ENG:-60': 0.017804999999999998, 'S-NSW-BAC-FBE:-59': 0.040619999999999996, 'S-NSW-BAC-FBE:-60': 0.035609999999999996}
关于python - 将两个字典的值相乘,同时在 Python 中附加键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30633788/