今天写代码题遇到的问题如下:
temp = [1,2,3]
list1 = temp
temp.append(4)
print(list1)
输出的结果是:
list1 = [1,2,3,4]
运行后发现明明改变的是temp,但list1也跟着temp一起变了。通过查找资料才知道,当list1 = temp这句代码执行后,list1和temp已经是指向同一个列表所以后对temp做改变就相当于对list1做改变。
如果想要只是把temp值赋给list1,改变其中一个列表时不会改变另一个列表的值,可以这样做:
temp = [1,2,3]
list1 = temp[:]
temp.append(4)
print(list1)
这样输出的结果就是:
list1 = [1,2,3]
版权声明:本文为qq_45789906原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。