我想知道为什么当我删除原始数组时它会影响复制的数组:
arr = [1,2,3]
arr1 = arr
del arr[:]
print(arr1) #this prints []
但是当我修改原始数组的元素时,对复制的数组没有影响:
arr = [1,2,3]
arr1 = arr
arr = [4,5,6]
print(arr1) #this prints [1,2,3]
如果有人可以解释这个问题,我感谢您的帮助,提前致谢。
您没有修改原始数组的元素,而是将一个新列表重新分配给arr
多变的。你对元素的思考变化的直觉将反映在arr1
如果你正确访问它的元素确实是真的,就像列表一样mutable在Python中。例如,
arr = [1,2,3]
arr1 = arr
arr[1] = 4
print(arr1) #this prints [1,4,3]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)