我有一个本地列表(在函数内部),该列表将传递给同一函数的递归调用。
我正在修改递归调用中的列表,但我不希望更改反映在原始副本中。
我知道深度复制,但是无法将其放置到位。 有指针吗?
答案 0 :(得分:0)
如果您不想更改原始列表,则必须创建一个新列表,然后将新列表设置为原始列表。如果我理解正确
答案 1 :(得分:0)
old_list = [***]
new_list = old_list.copy()
它可以在Python3上运行,如果不能在Python2上运行,则只需尝试以下操作:
new_list = old_list[:]
答案 2 :(得分:0)
我发现最好/最干净的方法是在递归调用中传递copy.deepcopy(old_list)
。