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

PyCharm可运行main.py但命令行报ModuleNotFoundError如何解决?

解决命令行运行main.py时的ModuleNotFoundError问题

原因分析

PyCharm会自动将项目根目录(MyApp)添加到Python的模块搜索路径(sys.path)中,所以能正常识别并导入Code模块。但直接在命令行执行python Code\main.py时,Python仅会把Code目录加入搜索路径,不会包含MyApp目录,导致main.py里的import Code或from Code import ...语句找不到对应模块。

不修改代码的解决方案

方法1:临时添加项目根目录到PYTHONPATH

在MyApp目录下执行对应系统的命令:

  • Windows:
    set PYTHONPATH=%cd%
    python Code\main.py
    
  • Linux/macOS:
    export PYTHONPATH=$(pwd)
    python Code/main.py
    

该操作会临时将当前MyApp目录加入Python的模块搜索路径,让Python能正确定位到Code模块。

方法2:以模块方式运行脚本

在MyApp目录下,使用-m参数以模块形式运行main.py:

python -m Code.main

-m参数会让Python将当前工作目录(MyApp)加入模块搜索路径,同时把Code作为一个包加载,从而正确解析模块导入语句。

方法3:切换到Code目录运行(有局限性)

如果main.py内的导入均为相对路径(比如from . import settings),可以切换到Code目录后直接运行:

cd Code
python main.py

但如果main.py使用了绝对导入(比如from Code import settings),此方法会失效,因此优先推荐前两种方案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 03:23:14