python list和函数之间的复制和原地址修改问题
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
def change(a): a.pop() #自带的方法都是原地址修改 a=[3,4,65] change(a) print (a)#直接修改了3. def change(a): a=[2,4,65,99] #复制操作也是一次拷贝,也慢,不修改原地址 a=[3,4,65] change(a) print (a)#没有修改a def change(a): a=a[:-1] #切片的本质是进行了一次复制,所以切片运算很慢 a=[3,4,65] change(a) print (a)#没有修改a def change(a): a[0]=999999 #index操作修改原地址 a=[3,4,65] change(a) print (a)#直接修改了a def change(a): a=set(a) #set()也不修改原地址 a=[3,4,65,4,4,4,4] change(a) print (a)#直接修改了a