copy()与直接=赋值的区别

 
a=[0,1,2,3,4,5]
b=a
c=a.copy()
del a[1]  
'''
   各变量值为:
   a=[0, 2, 3, 4, 5]
   b=[0, 2, 3, 4, 5]
   c=[0, 1, 2, 3, 4, 5]
'''
b.remove(4)
'''
   各变量值为:
   a=[0, 2, 3, 5]
   b=[0, 2, 3, 5]
   c=[0, 1, 2, 3, 4, 5]
'''
c.append(9)
'''
   各变量值为:
   a=[0, 2, 3, 5]
   b=[0, 2, 3, 5]
   c=[0, 1, 2, 3, 4, 5, 9]
'''
 
结论:
1、使用 = 直接赋值,是引用赋值,如果更改一个,另一个也会变,不管是更改a还是b,都会对对方产生影响;
2、使用copy(),是复制一个副本,不管更改哪一个,都不会影响到对方。


posted @ 2017-08-30 11:52  relax.1949  阅读(1002)  评论(0编辑  收藏  举报