单下划线_
变量
在Python中,变量可以包含数字、字母、下划线等,所以单独一个下划线_也是一个变量,表示一个临时对象,一般后续不会用到,比如:
>>> i = 0
>>> for _ in range(10):
... i += 1
...
>>> i程序中运行的最近一个结果
单下划线_也可以表示程序中运行的最近一个结果,如:
>>> 'https://machinelearning.blog.csdn.net/'
'https://machinelearning.blog.csdn.net/'
>>> _
'https://machinelearning.blog.csdn.net/'
>>> 100
100
>>> _
100国际化和本地化字符串之间翻译查找的函数
单下划线_作为函数名时,一般是代表了国际化和本地化字符串之间翻译查找的函数。
单下划线开头变量_var或函数_fun()
单下划线开头_var的变量或函数_fun表示该变量或函数为内部使用的变量,不建议在外部使用,但单下划线开头仅仅是一个提示,没有权限控制,实际上可以在外部访问。同时,如果用from <module> import *和from <package> import *时,这些属性、方法、类将不被导入。
单下划线结尾var_
为了防止跟系统关键字重名了,比如函数里需要有个参数class,但是Python中class为关键字,所以需要将 class设置为class_。
双下划线开头变量__var或函数__fun()
代表着类中的私有变量名或函数,主要用于避免子类覆盖父类的方法,如果需要访问,需使用_classname__fun()。
前后双下划线变量__var__或函数__fun__()
系统定义的变量名称或函数,如Python的魔法函数: __ init__(),__ str__(),__ new__(),__ unicode__(), __ call__(),__ len__(),__repr__(),__ setattr__(),__ getattr__(),__ getattribute__(),__ delattr__(),__ setitem__(),__ getitem__(),__ delitem__(),__ iter__(),__ del__(),__dir__(),__dict__(),__exit__(),__enter(),__all__()。我们定义变量名称或函数是应该尽量避免前后加双下划线。










