本文首发于 知乎
python中下划线最常见的是,作为字符用于命名变量,但是不同于
a b c
等字符,它有一些特殊的用法,有的是程序设计使然,有的是编程习惯约定俗成。
python中下划线主要使用于一下四个场景
- 表示最近输出结果
- 表示没用的变量
- 表示私有变量
- 前后双下划线————类的魔术方法
1.表示最近输出结果
在python交互模式下,
_
可以表示一个特殊变量,指向最近输出的结果
>>> a = 1
>>> a
1
>>> _
1
>>> _ + 1
2
>>> _ + 1
3
>>> c = _
>>> c
3
注意:如果
_
变量被显式赋值了,则
_
就固定表示这个值,不会动态地表示最近输出的结果
>>> a = 1
>>> a
1
>>> _
1
>>> _ = 2
>>> _
2
>>> a
1
>>> _
2
这一点可以应用与这样的场景:写了一段很长的代码,一直调试得到了正确的值,最后要把这个代码的运行结果赋值,就不用重新复制这段代码了,只要
a = _
即可。
2. 表示没用的变量
两个元素的循环,如果只需要用一个元素,另一个元素最好用
_
表示,说明这个元素不会被使用,增加代码可读性
i j
两个元素都使用是这样
>>> l = ['a', 'b', 'c']
>>> for i, j in enumerate(l):
... print(i, j)
...
0 a
1 b
2 c
如果我们只要用索引
i
,而
j
不用,正常是这样
>>> l = ['a', 'b', 'c']
>>> for i, j in enumerate(l):
... print(i)
...
0
1
2
但是
j
不使用最好不要命名为
j
,而是用
_
代替
>>> l = ['a', 'b', 'c']
>>> for i, _ in enumerate(l):
... print(i)
...
0
1
2
这种用法的更多例子如下
(1)
>>> l = ['a', 'b', 'c']
>>> # 打印和 l 相同长度数量的 1
... for _ in