做访问限制,是为了程序的健壮性。如果可以从外部对函数里面重要的属性进行任意修改,有可能程序崩溃只是因为一次不经意地参数修改。
- 通过定义私有属性做访问限制
默认情况下,可从外部访问对象的属性。若让属性不能从对象外部访问,可将属性定义为私有。
私有属性只能通过存取器方法来访问
Python没有为私有属性提供直接的支持,要让方法或属性成为私有的(不能从外部访问),只需让其名称以两个下划线打头即可
class Apple():
def name(self,name):
self.__name = name
def getName(self):
return self.__name
- 通过定义私有函数做访问限制;
与属性一样,只需要在函数名前面添加两个下划线打头既可实现私有函数;
class Apple():
def __setAge(self,age):
self.__age = age
def getName(self):
return self.__name
def info(self,age):
self.__setAge(age);



