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

pip install .无法导入inclider模块,但python setup.py install可正常运行的原因

问题原因解析

1. python setup.py install 正常的原因

直接运行python setup.py install时,脚本的执行目录就是你的项目根目录(包含inclider.py的目录)。Python会自动把脚本所在目录加入sys.path的最前端,所以import inclider能直接找到同目录下的inclider.py模块,自然不会报错。

2. pip install . 报错的核心原因

pip的安装流程和直接运行setup.py完全不同,它会先做构建隔离:

  • pip会创建一个临时工作目录,只把项目中符合Python打包规则的文件复制进去。默认情况下,它只会复制setup.py、pyproject.toml,以及find_packages指定的justatest目录,而根目录下的inclider.py不属于要打包的包内容,不会被复制到临时目录。
  • 之后pip在这个临时目录中执行setup.py,此时临时目录里根本没有inclider.py,所以会抛出ModuleNotFoundError。

3. subprocess.run 正常的原因

用subprocess.run执行时,本质是启动了一个全新的Python进程,这个进程的工作目录还是你的项目根目录,和直接在终端运行python inclider.py的环境完全一致,sys.path包含根目录,所以能正常找到inclider.py模块。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 14:22:10