python语法_深浅拷贝

浅拷贝,.copy 只拷贝第一层(可用于建立银行共享账号)。

s1 = [‘a’,'b','c']

s2 = s1.copy()

s2[0]='d'

print(s2)

print(s1) 此时修改s2对应s1没有影响。

s1 = [[1,2],'b','c']

s2 = s1.copy()

s2[0][1]='3'

print(s2)

print(s1) 此时修改s2对应s1有影响,因为s1[0]的指针地址 保存着后端对应两个不同的内存空间的地址,修改s1[0][1] 时,s1[0]的指针地址没变,只改了其中后端的一个指针地址,所以s1对应着也要改变。

import copy

copy.copy()

s2 =copy.deepcopy(s1)  深拷贝。

猜你喜欢

转载自www.cnblogs.com/kevingm/p/10037325.html