You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何Python Shell会将最后表达式存入_变量,而Python文件却不会?

为啥Python Shell里的_变量在脚本文件里用不了?

问题重现

在Python交互式Shell里执行以下代码完全正常:

>>> 10+2
12
>>> print(_)
12

但把这段逻辑写到.py脚本文件中运行时,会直接抛出错误:NameError: name '_' is not defined。

核心原因

  • _是Python交互式解释器专门添加的便利变量,作用就是自动缓存上一个表达式的计算结果,方便你在交互式试代码时快速复用结果,不用重复写计算逻辑。
  • 脚本文件属于批量执行的代码场景,Python不会给这类场景启用这个“小便利”——脚本运行不需要临时缓存单步结果的机制,因此根本不会定义_这个变量。

替代方案

如果需要在脚本里复用表达式结果,手动保存即可:

calc_result = 10 + 2
print(calc_result)

内容的提问来源于stack exchange,提问作者Alireza Bahrami

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 21:55:15