我有以下功能:
def myfunc(x):
y = x
y.append(' appendix') // change happens here
return y
x = []
z = myfunc(x)
print(x) // change is reflected here, and appendix is printed
如何确保更改
x
不会反映在调用该函数的代码中?
你会:
y = x[:]
复制列表
x
。
修改之前需要先复制X,
def myfunc(x):
y = list(x)
y.append('How do I stop Python from modifying x here?')
return y
x = []
z = myfunc(x)
print(x)