更改字典中的值

car*_*rmo 2 python dictionary

我想更改存储在词典字典中的值.

这是我试图实现的代码.问题是p保持不变,我不知道如何更新p.

j = {'a':1.0}
k = {'c':3.0}
p = {'e':j,'f':k}
for n in p.itervalues():
    print n
    n = {key:value/3.0 for key, value in n.items()}
    print n

print p
Run Code Online (Sandbox Code Playgroud)

Jam*_*mes 6

您需要将更新的值分配回原始字典.

j = {'a':1.0}
k = {'c':3.0}
p = {'e':j,'f':k}
for k,v in p.items():
    p[k] = {key:value/3.0 for key, value in v.items()}

print p
Run Code Online (Sandbox Code Playgroud)