Python中的公有和私有

私有属性只需要在名称前面加双下划线,例如:

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)

 

你可能感兴趣的:(Python)