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

Windows10命令行运行Python相对路径脚本的方法及环境变量配置

Windows10命令行中运行PYTHONPATH目录脚本的解决方案

我来帮你解决这个困惑——很多人刚接触PYTHONPATH时都会混淆它和系统PATH的作用,先把核心逻辑理清楚,再给你几个可行的方案:

先搞懂核心问题

PYTHONPATH的作用是告诉Python解释器去哪里找要导入的模块/包,但它并不能直接让你在命令行里通过相对路径执行脚本文件。你遇到的情况很典型:配置PYTHONPATH后,导入模块没问题,但执行脚本时,命令行只认当前工作目录或者系统PATH里的路径,这就是关键差异。

可行方案:三种思路任你选

方案1:把脚本目录加到系统PATH(最直接的命令行运行方案)

如果想在任意目录下直接用脚本名(或相对路径)运行PYTHONPATH里的脚本,把脚本所在目录加到系统PATH是最直接的办法,步骤如下:

  • 打开Windows设置:按下Win + I,搜索「环境变量」,选择「编辑系统环境变量」。
  • 在弹出的「系统属性」窗口中,点击「环境变量」按钮。
  • 在「系统变量」区域找到Path变量,点击「编辑」。
  • 点击「新建」,粘贴你的PYTHONPATH脚本目录的绝对路径(比如D:\tensorflow_projects\scripts)。
  • 依次点击「确定」保存所有窗口的修改。
  • 必须重启命令行窗口——环境变量修改不会在已打开的终端中生效。

现在你在任意目录下,直接输入脚本名(比如train_model.py)或者相对路径(比如utils\data_clean.py)就能运行脚本了。

方案2:用Python的-m参数以模块方式运行(更符合Python规范)

如果不想修改系统PATH,还可以利用PYTHONPATH的配置,把脚本目录变成Python包来运行,步骤如下:

  • 到你的PYTHONPATH目录下,新建一个空的__init__.py文件——这个文件是用来标记该目录为Python包的,空文件就行。
  • 假设你的脚本叫predict.py,在任意命令行目录下运行:
    python -m predict
    
    注意这里不需要加.py后缀。如果脚本在子目录里,比如models\cnn.py,就运行:
    python -m models.cnn
    

这种方法完全依赖你已经配置好的PYTHONPATH,不用改系统环境变量,更适合规范的Python项目结构。

方案3:临时在命令行添加路径(单次生效)

如果只是临时需要运行一次,不想修改永久环境变量,可以在当前命令行窗口里临时设置PATH:

set PATH=%PATH%;D:\tensorflow_projects\scripts

这个修改只在当前窗口生效,关闭终端后就会恢复原样。

关键注意事项

  • 别搞混PYTHONPATH和系统PATH:PYTHONPATH是给Python找模块用的,系统PATH是给命令行找可执行文件(包括Python脚本)用的,两者作用完全不同。
  • 一定要重启命令行:修改环境变量后,旧的终端窗口不会加载新的配置,必须重启才生效。
  • 可选的shebang行:如果想直接输入脚本名运行(不用加python前缀),可以在脚本开头加一行:
    #!python
    
    不过Windows下这个效果不如Linux明显,多数时候还是需要加python前缀来运行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 09:19:20