class Student(object):
@property
def score(self):
# 2
a = 1
return a
@score.setter
def score(self, value):
# 1
pass
if __name__ == "__main__":
a = Student()
print(a.score)
- 实例化student 之后调用
property
设置的函数如果不进行重新赋值操作,直接走#2
执行getter方法
, 如果进行赋值操作,a.score=xx
, python会先进行setter
重新赋值#1
然后执行#2 getter方法
操作