系统学习Python——下划线的作用与意义:单下划线与双下划綫

分类目录:《系统学习Python》总目录


单下划线_

变量

在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__()。我们定义变量名称或函数是应该尽量避免前后加双下划线。

猜你喜欢

转载自blog.csdn.net/hy592070616/article/details/125114737
今日推荐