1、实例可以获得和修改属性的值。但是,如果需要限制实例修改属性,则使用私有属性。定义私有属性只需在定义属性名称时使用两条底线作为开头,python解释器认为此属性时是私有的,外界不能随意访问此属性。
class Human: def __init__(self, name): self.__name = name human = Human('周星驰') human.__name() 执行结果: AttributeError: 'Human' object has no attribute '__name'
2、私有方法类似于私有变量,只能在类内部调用,实例不能直接调用。
class Human: def __init__(self, name): self.name = name # 方法 def __run(self): print('生命不息,运动不止') human = Human('周星驰') human.__run() #错误 执行结果: AttributeError: 'Human' object has no attribute '__run'
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试