_x是一种弱表示,它用在类中的属性或方法,表示是private属性,希望外部使用者不要直接调用它。但它只是暗示,没有任何限制性措施。
private属性主要推荐的还是这种方式,因为Python的设计理念有一条 “We are all adults here”
__x是会被实现时,会被替换_A__x形式。它主要作用有
- 用在父类的函数,防止被子类覆盖
- 用来做private属性(不推荐)
class A(object): def __method(self): print "I‘m a method in A" def method(self): self.__method() class B(A): def __method(self): print "I‘m a method in B" b = B() b.method() $ python example.py I‘m a method in A # 在父类调用self.__method,其实是调用self._A__method
__x__是表示由python自己调用,不是给程序员调用的。比如各种魔方方法。
时间: 2024-10-29 00:20:46