class presenter(object):
def __init__(self, name):
'''
此处self.name不需要写成self.__name,解释器会自动调用name的属性方法;
如果写成self.__name,就不会调用name的属性方法,只是单纯的赋值操作。
'''
self.name = name
@property
def name(self):
'''name 的属性方法,等同于get_name'''
return self.__name
@name.setter
def name(self, name):
'''name 的属性方法,等同于set_name'''
self.__name = name
如果你创建了属性方法,一个好的建议是你一直调用属性方法来改变属性值,因为你可以在属性方法里对输入的值做各种的验证或检查,这样即可保持构造方法的简洁明了,又可以确保数据的安全和程序的稳定。