1、python是不含有private关键字的,因此在定义私有变量时,只需要在变量的前面加上双横杠(例如:__name)即可。
class Test():
def __init__(self):
self.__name__ = ''
self.__value__= 1
def get_name(self):
return self.__name__
def set_name(self, value):
self.__name__=value
test = Test()
访问test.__name、test.__value是禁止的
那么我们应该怎么访问呢:
test.set_name('小张)
test.get_name()即可打印出“小张”
2、虽然加上get,set函数后,可以设置和访问私有属性,但使用起来不是很方便,能否像c#里的语法糖那样方便的对私有属性进行访问呢?当然可以,借助property即可。
property是一个装饰器,有了它,我们就可以像C#里的语法糖那样方便的对对象的私有属性进行访问。