本人刚刚接触Python,目前使用python3.6,遇到了一点关于类属性的问题,代码如下:classA():def__init__(self):self.x=0self.y=0self.z=[self.x,self.y]defadd_one(self):self.x+=1#self.z=[self.x,self.y]a=A()a.add_one()print(a.x)#1print(a.z)#[0,0]问题如下:假设在add_one方法里面没有self.z=[self.x,self.y]这段代码,可以发现虽然x是更新了,但是z并没有随着x的更新而更新,除非手动加上这段代码才可以实现更新,请问这是为什么?另外请教一下有没有其他可以更加简便的方法进行对属性的更新?因为目前这种代码更新起来很麻烦,增加一个更新方法就需要将所有被更新的属性手动更新一次愿有前辈能指点一下,若有表述不当,请见谅!
不负相思意
有只小跳蛙
相关分类