目录
私有化属性有两个意义,一个是数据保护,一个是数据过滤
一、数据保护
二、数据过滤
私有化属性有两个意义,一个是数据保护,一个是数据过滤
一、数据保护
class Person:
def __init__(self):
self.__age = 10
pass
p1 = Person()
p1.__age =90
print(p1.__dict__)
在这里Person__age的值还是10,并没有变成90
修改的(应该说是添加的__age的值是90)
实例化对象是访问不了类里面的对象的
二、数据过滤
class Person:
#主要作用,当我们创建好一个实例对象之后,会自动调用这个方法,来初始化对象啊
def __init__(self):
self.__age = 18
def setAge(self,value):
if isinstance(value,int) and 0 < value <200:
self.__age =value
else:
print('您输入的数据有问题,请重新输入')
def getAge(self):
return self.__age
p1 = Person()
p1.setAge('abc')
print(p1.getAge())