先看如下代码:
x = ['a','b','z'] y = x print y y[0] = 'w' print x,y
结果输出:
>>> ['a', 'b', 'z'] #y list ['w', 'b', 'z'] ['w', 'b', 'z'] #y第一个元素改变后,x,y一起变化
有时候如果你真的希望将x的list元素一并拷贝给另一个list。而改变另一个list,不希望改变原list,该怎么办?
x = ['a','b','z'] m = list(x)#使用list方法 m = x[:]#或者使用切片方法 print m m[0]='n' #当改变m list元素值时 print x,m #只有m list被改变,x list并没有变化
结果输出:
>>> ['a', 'b', 'z'] ['a', 'b', 'z'] ['n', 'b', 'z']