我有三個詞典有相似的鍵,其價值我想做一些計算。計算表達式的三個詞典的值具有相似的鍵
dict1 = {key1: 1, key2: 2, key3: 3}
dict2 = {key1: 10, key2: 10, key3: 10}
dict2 = {key1: 1, key2: 2, key3: 3}
如何使用Python來找到結果的詞典:
dict1.values()/((dict2.values() - dict3.values())*100)
我正在尋找的結果,像這樣:
resultdict = {key1: .00111111, key2: .0025, key3: .00428571}
我已經成功地做到了用以下方式計算兩個字典,但我很困惑如何包含第三個:
finaldict = {}
for key in (dict1.viewkeys() | dict2.viewkeys()):
if key in dict1: finaldict.setdefault(key, []).append(dict1[key][0])
if key in dict2: finaldict.setdefault(key, []).append(dict2[key])
for lst in finaldict.values():
if not lst[0] == 0:
lst[0] = (float(lst[1])/float(lst[0]))*100
del lst[-1]
如果分母不爲零,確保這隻會運行的好方法 – user25976 2014-09-24 23:44:53
爲該 – sheeptest 2014-09-25 14:33:42