list 赋值拷贝
2018-05-20 本文已影响0人
仁安天下
list1=list2 这是地址引用,其中一个改变,另一个也跟着改变
list1=list2[:] 浅拷贝,改变第二层子项,第二层子项地址跟着改变
list1=list2.copy() 浅拷贝,改变子项,第二层子项地址跟着改变
list1=list2.deepcopy()深拷贝,地址完全不一样
def func(l):
#改变参数l
return
func(list) 这个也是地址引用,函数改变了list,外面的list也会被改变。(python没有值传参)
list是可变类型
```
list1 = [1,2,[3]]
list2 = list1[:]
list1[2][0] = 100
print list2
切片和浅拷贝效果一样
```