单个下划线开头表示这是一个非公共方法或属性:我们为`_private_var`和`_private_method()`添加了前置单一下划线。
在Python编程语言中,下划线(_)是一个常见而又神秘的符号。它有多种用途,包括作为变量名、函数参数和类属性等。但许多初学者对于它到底代表什么意思感到困惑。
在Python中,单独使用一个下划线表示“我不关心这个变量的值”。比如说:
```
_, b = 1, 2
print(b) # 输出2
上面代码中,我们把第一个元素赋值给了`_`变量,在后续代码执行过程中没有用到该变量。通常情况下我们会将其命名为无用或占位符。
同时,在交互式环境(REPL)里面,最近一次计算结果可以通过 `_ ` 访问:
>>> a = 10 + 20
>>> _
30
```
当然也可以定义成普通的变量名:
last_result = _
print(last_result)
以单个前置或后置下滑杆开头/结尾时,则指示该名称具有特殊含义。
- _xxx: 单个下划线开头表示这是一个非公共方法或属性。
- xxx_: 单个下滑杆结尾表明它与Python关键字有所区别。
在编写类时,前置单一下划线的名称通常用于指示该方法或属性是“私有”的。例如:
class MyClass:
def __init__(self):
self._private_var = 42
def _private_method(self):
return 'Hello, world!'
上面代码中,我们为`_private_var`和`_private_method()`添加了前置单一下划线。这并没有真正地使它们成为私有成员变量和函数,但是建议不要从外部访问这些变量。
以两个前置或后缀符号开头/结尾的名称具有特殊含义。如果你想定义一个名字与Python保留关键字相同的变量(例如 `lambda`, `class`, `yield`),则可以使用双拖鞋来避免冲突。
此外,在类定义中还可以使用以下形式:
- \_\_xxx:双前导下滑杆会导致Python解释器重写属性名称,以避免子类意外覆盖父类中包含的属性。
- xxx\_\_: 双后缀符号被称为“魔术”方法(magic methods),因为它们提供了实现对象的特殊行为的机会。
例如,我们可以使用双前置下划线来避免变量名与Python关键字冲突:
self.__lambda = 42
obj = MyClass()
print(obj._MyClass__lambda) # 输出42
上面代码中,我们在`__init__()`方法中定义了一个名为`__lambda`的实例变量。但是由于双前缀下划线,该变量被重命名为`_MyClass_lambda`, 我们通过这个新名称访问它。
尽管看起来有些神秘和复杂,但Python中的下划线其实很简单易懂。只需要理解每种用法背后的含义,并根据需要灵活运用即可。
希望本文能够对你更深入地了解这个常见符号有所帮助!
新闻名称:Python中的下划线:解密这个神秘符号
标题路径:http://www.csdahua.cn/qtweb/news38/423988.html
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网