Python 单下划线开头、双下划线开头

1、单下划线开头的变量:半私有变量

以此类名称命名的对象,需要分为两种情况:

类外:类外的半私有对象、私有对象,功能一致,均是在本模块中可以正常使用,但是不能被直接导入并调用。如果要在模块外使用,那么需要导入本模块,然后使用(模块名.变量名)进行调用。

类中:

类中的半私有对象,仅仅是概念上的私有,默认不要在类外进行调用

实际上,在类外,均可以使用(实例名.变量名/类名.变量名)进行调用。

 

2、双下划线开头的变量:私有变量

也需要分为两种情况:

类外:

与半私有对象相同

类中:

类中的私有对象,在类外均不可直接调用,可以理解为真私有,但是,Python中没有完全私有的对象,此种对象也是可以在类外进行调用的,这里涉及到一个概念:矫直。

Python 单下划线开头、双下划线开头_第1张图片

3、以双下划线开头,双下划线结尾的对象,Python内置属性名或者魔法方法名。是Python自己实现的属性和方法,一般不允许自定义类似此种命名方式的属性或者方法。

你可能感兴趣的:(python学习,python)