可以說,我有名字和成績的字典:遍歷字典和變化值
{"Tom" : 65, "Bob" : 90, "John" : 80...}
,我希望把所有的值字典,並添加10%到每個:
{"Tom" : 71.5, "Bob" : 99, "John" : 88...}
我怎樣才能通過字典中的所有值?
可以說,我有名字和成績的字典:遍歷字典和變化值
{"Tom" : 65, "Bob" : 90, "John" : 80...}
,我希望把所有的值字典,並添加10%到每個:
{"Tom" : 71.5, "Bob" : 99, "John" : 88...}
我怎樣才能通過字典中的所有值?
快譯通理解:
mydict = {key:value*1.10 for key, value in mydict.items()}
前2.7:
mydict = dict(((key, value*1.10) for key, value in mydict.items()))
對於Python版本低於2.7,你可以使用這個:
result = dict((k, 1.1 * v) for k, v in h.items())
和Python 2.7版或更高,你只需要:
result = { k: 1.1 * v for k, v in h.items() }
您沒有要求將您的字典替換爲新字典。以下代碼更新您現有的字典。它使用基本的循環技術,這些技術同樣適用於知道以及理解。
for name in grade_dict:
grade_dict[name] *= 1.1
鮑勃的分數是如何從90跳到110的? –
這是一個錯誤。 – user1040563