对于dict中的每个值?

tkb*_*kbx 2 python

我有一个带整数值的dict,我想对dict中的每个值执行一个操作.我想为此使用for循环,但我无法正确使用它.就像是:

>>>print(myDict)
{'ten': 10, 'fourteen': 14, 'six': 6}

>>>for value in myDict:
...    value = value / 2

>>>print(myDict)
{'ten': 5, 'fourteen': 7, 'six': 3}
Run Code Online (Sandbox Code Playgroud)

bok*_*nic 7

迭代键和值:

for key, value in myDict.items():
    myDict[key] = value / 2
Run Code Online (Sandbox Code Playgroud)

字典上的默认循环遍历其键,例如

for key in myDict:
    myDict[key] /= 2
Run Code Online (Sandbox Code Playgroud)

或者你可以使用地图或理解.

地图:

myDict = map(lambda item: (item[0], item[1] / 2), myDict)
Run Code Online (Sandbox Code Playgroud)

理解:

myDict = { k: v / 2 for k, v in myDict.items() }
Run Code Online (Sandbox Code Playgroud)

  • 您没有回答实际问题:如何更改每个值. (2认同)

Ela*_*zar 6

for k in myDict:
    myDict[k] /= 2
Run Code Online (Sandbox Code Playgroud)