一.类的私有属性
__private_attrs:两个下划线开头,声明该属性为私有
1.类的私有属性不能被类的实例直接访问,示例代码如下:
class A:
__secretCount = 0 # 私有变量
def count(self):
self.__secretCount += 1
print(self.__secretCount)
a = A()
a.__secretCount
执行以上代码会报错,输出结果为:
Traceback (most recent call last):
File "d:\Code\python\xxx_api\ppp.py", line 1418, in <module>
a.__secretCount
AttributeError: 'A' object has no attribute '__secretCount'
2.类的私有属性虽然不能被类的实例直接访问,但是可以通过被类的实例以object._className__attrName( 对象名._类名__私有属性名 )这种形式来访问属性
class A:
__secretCount = 0 # 私有变量
def count(self):
self.__secretCount += 1