私有属性只需要在名称前面加双下划线,例如:
class Person:
__name = 'lily'
p = Person()
print(p.__name)
这样是访问不到的;
应该这么写:
class Person:
__name = 'lily'
def getName(self):
return self.__name
p = Person()
print(p.getName())
因为Python的私有是伪私有,其实可以直接这么写(对象._类名__属性名):
class Person:
__name = 'lily'
p = Person()
print(p._Person__name)