ITEEDU

私有属性

我们可以在成员名称前添加 "__" 使其成为私有成员。

>>> class Class1:
    __i = 123
    def __init__(self):
        self.__x = 0
    def __test(self):
        print id(self)

事实上这只是一种规则,并不是编译器上的限制。我们依然可以用特殊的语法来访问私有成员。

>>> Class1._Class1__i
123
>>> a = Class1()
>>> a._Class1__x
0
>>> a._Class1__test()
13860376