WSL Shell执行hello.py文件失败求助:报NameError错误
解决WSL中无法执行hello.py的问题
错误原因说明
你遇到的NameError: name'hello.py' is not defined,是因为误在**Python交互解释器(提示符为>>>)**里直接输入了hello.py——Python会把它当成变量名,而非执行脚本的指令,所以报错。
正确执行流程
- 退出Python交互环境:如果当前处于
>>>提示符下,输入exit()回车回到WSL Shell(bash/zsh等)。 - 切换到文件所在目录:用
cd命令定位,比如文件在~/code文件夹,执行cd ~/code。 - 确认文件存在:执行
ls,查看输出列表里是否有hello.py。 - 执行脚本:在Shell中运行
python3 hello.py。
仍失败的排查点
- 检查
hello.py内容:确保是可运行的基础代码,比如:print("Hello World") - 添加执行权限:执行
chmod +x hello.py,若文件开头加了#!/usr/bin/env python3,也可直接用./hello.py执行。 - 核对Python版本:用
python --version和python3 --version确认环境版本,改用对应命令(比如python hello.py)。 - 处理特殊路径:若文件路径含空格/特殊字符,执行时加引号,比如
python3 "my hello.py"。
内容的提问来源于stack exchange,提问作者Antonino Roccaforte
相关产品推荐
相关产品推荐

