天天看点

Python 单下划线和双下划线的区别

分享知识  传递快乐

在Python中,有以下几种方式来定义变量:

1、无下划线变量

xx:无下划线变量为公有变量

2、前面单下划线

_xx:前置单下划线,又称口头私有变量,私有化属性或方法的一种,一般来讲,变量名_xx被看作是“私有 的”,在模块或类外不可以使用。当变量是私有的时候,用_xx 来表示变量是很好的习惯。类对象和子类可以访问,这并不能完全做到真正的私有,只是约定俗成的而已,这样写表示不希望这个变量在外部被直接调用

3、前面双下划线

__xx:前置双下划线,私有化属性或方法,只有内部可以访问,外部不能访问。

4、前后都有双下划线

__xx__:以双下划线开头,并且以双下划线结尾的,是特殊变量(这就是在python中强大的魔法方法),特殊变量是可以直接访问的,对于普通的变量应当避免这种命名风格。

5、后置下划线

xx_:后置单下划线,用于避免与Python关键词的冲突