Lao*_*581 3 python immutability
我正在尝试在字典上制作一份硬拷贝,以避免修改原始字典的值。
这是我的代码:
import copy
d1 = {1: 1}
d2 = copy.deepcopy(d1)
d2[1] = None
Run Code Online (Sandbox Code Playgroud)
如果d1
是 ImmutableDict 怎么办?如何复制并允许修改?
import immutabledict
d1 = immutabledict.immutabledict({1: 1})
d2 = copy.deepcopy(d1)
d2[1] = None # TypeError: 'immutabledict' object does not support item assignment
Run Code Online (Sandbox Code Playgroud)
调用dict
将创建副本并允许您变异d2
import immutabledict
d1 = immutabledict.immutabledict({1: 1})
d2 = dict(d1)
d2[1] = None
Run Code Online (Sandbox Code Playgroud)
这会正确更新d2
并且不会改变d1
。
归档时间: |
|
查看次数: |
1166 次 |
最近记录: |