【问题标题】:How can I leave the original dictionary unchanged, when editing a the new dict编辑新字典时,如何保持原始字典不变
【发布时间】:2013-03-21 19:34:00
【问题描述】:

我刚开始学习 Python 编码。 请允许我问一个困扰我很久的愚蠢问题。

g={1:'a',2:'b',3:["k",'c'],4:'d'}

gt=g    

gt[3].remove('c')

如何保持 g 不变?

【问题讨论】:

标签: python immutability


【解决方案1】:

为此使用copy。而且由于您复制包含列表的字典并且想要编辑该列表,因此您应该使用 deepcopy:

from copy import deepcopy

g={1:'a',2:'b',3:["k",'c'],4:'d'}

gt=copy.deepcopy(g)  

gt[3].remove('c')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-03-19
    • 2015-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-18
    • 2018-02-11
    相关资源
    最近更新 更多