Python私有属性和私有方法

#私有属性和私有方法则为不希望对外界公开的属性和方法
#定义方式为在属性或方法名前加两个下划线
class Women:
    def __init__(self,name):
        self.name=name
        self.__age=18

    def __secret(self):
        # 在对象的方法内部,可以访问对象的私有属性
        print('%s 的年龄是 %d' % (self.name,self.__age))

xiaofang=Women('小芳')
# print(xiaofang.__age) #报错,私有属性在外界不能被直接访问
# xiaofang.__secret()   #报错,私有方法在外界不能被直接访问

#python中,并没有真正意义上的私有,只有伪私有
#外界调用私有属性和私有方法,最好不要用
print(xiaofang._Women__age)
xiaofang._Women__secret()
#该方法别用,如果需要的话那不如改为公有

 

你可能感兴趣的:(python,python)