簡體   English   中英

從字典執行項目操作

[英]Perform an item operation from a dictionary

我創建了兩個相互關聯的字典,情況是我必須執行加法和除法運算,但我在一個部分停滯不前:

dict1 = {1: [20900], 2: [20900], 3: [20900]}

dict2 = {1: [2.5], 2: [5.0], 3: [7.5]}

dict3 = {key:[dict1[key][0]*(dict2[key][0])] for key, valor in dict2.items()} 

我正在尋找的是累積dict3項目的總和,然后將其划分為每個項目,如下所示:

Cumulative sum of dict3 items = 52250 + 104500 + 156750 = 313500

然后將這個數量除以 3 個項目中的每一個,最后我要查找的字典如下所示:

dict3 = {1: [0.1667], 2: [0.333], 3: [0.500]}

我的問題是在除以累積的數字時。 應該澄清的是, dict1 和 dict2在每個鍵中總是有 1 個單個列表項。

非常感謝您對這個問題的幫助,問候。

在你已經完成構建dict3之后

dict3 = {key:[dict1[key][0]*(dict2[key][0])] for key, valor in dict2.items()} 

您可以使用sum和字典理解來計算累積和

dict3_sum = sum(value[0] for value in dict3.values())

然后將dict3的每個元素除以計算的總和

dict3 = {key: [value[0]/dict3_sum] for key, value in dict3.items()}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM