python a = b 和a = b.copy()区别:
a = b:
a 和 b指向同一个内存地址,a和b任意一个改变都会使内存地址里面的数据改变,导致另一个变量也会改变。
a = b.copy()
a是b的副本,两者没有关系,不管谁改变都不影响对方。
例子:
b = ['1']
a = b.copy()
print(a)
c = b
a.append('2')
print(a, b, c)
b.append('3')
print(a, b, c)
c.append('4')
print(a, b, c)
结果:
['1']
['1', '2'] ['1'] ['1']
['1', '2'] ['1', '3'] ['1', '3']
['1', '2'] ['1', '3', '4'] ['1', '3', '4']