Python 对数组等对象拷贝默认采用的方法是引用传递,即地址传递,而不是值传递,因而修改拷贝的值的时候原对象也会随之改变。
在给数组进行赋值时,尽量不使用b = a的操作,因为该操作会使得b指向a指向的内存区域,对b数组的更改将影响a数组的值。
此时可以import copy模组,然后进行deepcopy,可以复制原变量的所有数据,在内存中生成一个新的对象。
import copy
a = [0,1,2,3]
b = copy.deepcopy(a)
Python 对数组等对象拷贝默认采用的方法是引用传递,即地址传递,而不是值传递,因而修改拷贝的值的时候原对象也会随之改变。
在给数组进行赋值时,尽量不使用b = a的操作,因为该操作会使得b指向a指向的内存区域,对b数组的更改将影响a数组的值。
此时可以import copy模组,然后进行deepcopy,可以复制原变量的所有数据,在内存中生成一个新的对象。
import copy
a = [0,1,2,3]
b = copy.deepcopy(a)