扫码关注官方订阅号
>>> x = 1 >>> x 1 >>> _ 1
欢迎选择我的课程,让我们一起见证您的进步~~
在Python中_其实就是一个普通的标识符而已,之所以有这么神奇的效果,是因为交互模式下Python用sys.displayhook这个函数干了一件很好玩的事:如果当前行的值不是None,就把这个值赋给这个_变量。 这就带来了一个效果,你每输入一个表达式,_这个变量的值都回更新,你在交互模式下打个_实际上就是显示这个变量的值,所以看起来的效果就是这个_命令能回显上一个表达式的值。
_
sys.displayhook
None
更多的是一种规范吧,如下(摘自http://www.cnblogs.com/yaksea/archive/2011/08/30/2159416.html): _单下划线开头:弱“内部使用”标识,如:”from M import *”,将不导入所有以下划线开头的对象,包括包、模块、成员
单下划线结尾_:只是为了避免与python关键字的命名冲突
__双下划线开头:模块内的成员,表示私有成员,外部无法直接调用
双下划线开头双下划线结尾:指那些包含在用户无法控制的命名空间中的“魔术”对象或属性,如类成员的name 、doc、init、import、file、等。推荐永远不要将这样的命名方式应用于自己的变量或函数。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
在Python中
_
其实就是一个普通的标识符而已,之所以有这么神奇的效果,是因为交互模式下Python用sys.displayhook
这个函数干了一件很好玩的事:如果当前行的值不是None
,就把这个值赋给这个_
变量。这就带来了一个效果,你每输入一个表达式,
_
这个变量的值都回更新,你在交互模式下打个_
实际上就是显示这个变量的值,所以看起来的效果就是这个_
命令能回显上一个表达式的值。更多的是一种规范吧,如下(摘自http://www.cnblogs.com/yaksea/archive/2011/08/30/2159416.html):
_单下划线开头:弱“内部使用”标识,如:”from M import *”,将不导入所有以下划线开头的对象,包括包、模块、成员
单下划线结尾_:只是为了避免与python关键字的命名冲突
__双下划线开头:模块内的成员,表示私有成员,外部无法直接调用
双下划线开头双下划线结尾:指那些包含在用户无法控制的命名空间中的“魔术”对象或属性,如类成员的name 、doc、init、import、file、等。推荐永远不要将这样的命名方式应用于自己的变量或函数。