python类的成员没有访问控制限制,这与其他面向编程的语言不同。
通常约定以两个下划线开头,但是不以两个下划线结束的属性是私有的,其他为公共的。注意,不能直接访问私有属性,但可以通过方法中访问。
举个栗子:
class A: __name='class A' def dd(self): print('私有属性') sg=A() sg.dd() print(sg.__name)
运行结果
Traceback (most recent call last): File "G:/I like study/1.6.py", line 7, in <module> print(sg.__name) AttributeError: 'A' object has no attribute '__name' 私有属性
所以不能直接访问私有属性,不然直接报错。。
但可以在方法中访问
class A: __name='class A' def dd(self): print(A.__name) sg=A() sg.dd()
运行结果
class A