Tia*_* Li 4 python dictionary iterator
我想知道在不依赖于键的情况下修改Python字典的值是否可以:
# d is some dictionary containing classes I wrote
for v in d.itervalues():
# modify v, and v's type may or may not change
Run Code Online (Sandbox Code Playgroud)
我不确定Python标准对此有何看法,有人可以提供一些信息吗?
谢谢!
如果你的意思是这样的结构:
d = {1: [1]}
for v in d.itervalues():
v[0] += 1
Run Code Online (Sandbox Code Playgroud)
然后是的,这是完全安全的.在dict刚刚存储到相关对象的引用,不去碰它比存储和检索其他任何方式.这没有明确记录,但它在映射定义(其中dict是子类型)中是隐含的:
甲映射对象可哈希值映射到任意对象.
"任意"意味着对象可能是可变的.