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

为什么在Python IDLE shell中运行代码时会触发NameError报错?

NameError报错原因

报错和代码本身的语法逻辑无关,是你在PyShell交互环境下的执行操作有误导致的:

  • 当你在交互环境逐行运行代码到myName = input()时,Python会进入输入等待状态,此时界面不会显示>>>提示符,你在这个状态下输入的内容才会被input()函数接收赋值给myName变量。
  • 你实际操作时,误认为myName = input()已经执行完毕,直接把bn作为独立的Python命令输入运行,由于你没有提前定义过名为bn的变量,就触发了NameError报错。
修复方案
  • 方案一:将所有代码保存为后缀为.py的独立文件,直接运行整个脚本,当控制台输出What is your name?时直接输入名字即可正常执行。
  • 方案二:如果要在交互环境逐行运行,执行到myName = input()后不需要输入>>>,直接输入你的名字按下回车,再继续执行后续的打印代码即可。

内容的提问来源于stack exchange,提问作者Mic Test

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 03:36:06