本文实例讲述了Python对象属性自动更新操作。分享给大家供大家参考,具体如下:
在软件设计中会遇到这样的问题:有些属性之间有相互关联。这样,其中的一个属性变化的时候其他的属性也应该跟随变化。
先看一段示例代码:
# -*- coding:utf-8 -*-
#!python3
class DemoClss:
def __init__(self,val1,val2):
self.val1= val1
self.val2= val2
self.sum= self.val1 + self.val2
obj = DemoClss(123,234)
print(obj.sum)
obj.val1 = 321
print(obj.sum)
代码的执行结果如下:
两个结果一致!其实,这种类似的设计中我们大多时候是希望有一个sum属性跟随者两个数值能够自动变化。但是,上面的这种方式显然是不行的,因为这种设计的生效只能够是在初始化的时候生效。
那么,如果想要实现一个随时求和的方法我们该怎么做呢?其实,我们可以通过方法来实现!代码的改进如下:
# -*- coding:utf-8 -*-
#!python3
class DemoClss:
def __init__