📅  最后修改于: 2023-12-03 15:19:23.055000             🧑  作者: Mango
在Python中,下划线(_
)有多种不同的作用,本文将介绍其常见的用法。
在交互式环境或某些代码片段中,下划线常用作占位符,表示上一个输出或表达式的结果。
例如,执行以下代码:
>>> 1 + 2
3
>>> print(_)
3
上面的代码中,第一行计算了1加2的结果,第二行使用了下划线作为占位符,表示上一个表达式的结果(本例中为3)。
在Python中,下划线也可用作变量名的前缀,表示该变量为私有变量,不应该被外部访问。
例如:
class MyClass:
def __init__(self):
self._my_private_var = 42
def get_my_private_var(self):
return self._my_private_var
上面的代码中,私有变量_my_private_var
以下划线开头,这表示该变量不应该被外部直接访问。但是,这并不是真正的私有(Python并没有提供真正的私有变量),外部依然可以访问该变量,只不过须使用_
加上变量名的方式来访问(如上面代码中的get_my_private_var
方法)。
在Python的国际化(i18n)函数中,下划线也有重要用途。大多数Python国际化函数都使用下划线作为翻译标记函数的名字(通常为_()
),如下所示:
def _(msg):
# 翻译 msg 并返回
...
在国际化函数中使用下划线的原因是,此函数名短小且易于输入,而且不容易引起与其他函数名冲突。
在Python中,下划线还有一个命名约定,用于表示某些特殊含义的变量或属性。例如:
_foo
: 表示该变量或属性为非公共(但不是真正的私有)的内容;__foo
: 表示该变量或属性为“名称修饰符(name mangling)”所使用的名称;__foo__
: 通常用来表示特殊方法或属性。需要注意的是,这些命名约定并不是Python强制执行的语言特性,而只是一种普遍接受的编程习惯。
在Python中,下划线具有多种不同的作用,包括作为占位符、私有变量前缀、国际化函数的翻译标记,以及各种命名约定的使用。了解这些用法能够帮助程序员更好地编写Python代码,并且遵循Python社区的规范和惯例。