关于python‘’ =‘’

 x=[1,2,3,4]
y=x
y[0]=5
print(x)
print(y)

为什么令y【0】=5后x[0]也=5了呢?

python中的变量赋值声明并不会复制一份元数据,而是创建了一个新的引用指向同一份数据,
类似java的引用和C++的指针,所以改变y中数据会影响x。
要实现x和y互不影响,可以使用:
1. y = x[:]
2. y = list(x)
3. y = copy.copy(x)
4. y = copy.deepcopy(x)

作用:在不增加对象的引用计数个数的情况下获得对象的引用

实际中有什么用暂时还不是很清楚,以后再补充。

#coding:gbk
'''
Created on 2014年6月14日

@author: zhoucl09164
'''

class A():
    def del(self):
    &......
答案就在这里:python的弱引用
----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。