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

执行pip install -r requirements.txt后运行Python脚本仍报Module Not Found问题

错误原因

  • 环境不匹配:系统中pip和python绑定的不是同一个Python版本。大部分操作系统默认会同时预装Python2、Python3两个版本,很多时候pip对应Python2的包管理器,python却调用了Python3的解释器,反之也有可能;如果本地配置了虚拟环境,也可能出现脚本执行时未激活虚拟环境,安装和运行分属不同环境的情况。
  • 安装未成功:全局安装时没有权限,导致pip安装flask被系统拦截,实际依赖并没有写入对应环境的包目录,执行安装命令时的报错可能被忽略。
  • 路径错误:执行start.sh时的工作目录下不存在requirements.txt文件,pip没有读到依赖列表,全程没有安装任何包。

解决方法

1. 统一环境调用

优先明确指定Python版本执行,避免默认绑定混乱,修改start.sh内容如下:

pip3 install -r requirements.txt
python3 api/api.py

如果使用虚拟环境,需要先激活虚拟环境再执行后续命令,示例:

# 替换为你的虚拟环境激活路径
source ./venv/bin/activate
pip install -r requirements.txt
python api/api.py

2. 解决安装权限问题

如果是在全局Python环境下安装,添加--user参数使用用户级安装,避免权限拦截:

pip3 install --user -r requirements.txt

3. 调试校验执行过程

如果修改后仍然报错,可以在start.sh中添加调试命令,定位具体问题:

# 输出当前工作目录,确认requirements.txt位于该目录下
pwd
# 输出pip、python对应的版本和绑定路径,确认二者属于同一环境
pip3 --version
python3 --version
# 执行依赖安装
pip3 install -r requirements.txt
# 输出已安装的flask版本,确认安装成功
pip3 list | grep flask
# 启动服务
python3 api/api.py

如果校验发现pip3和python3绑定路径前缀不一致,可以直接写全路径调用,确保二者属于同一环境,比如/usr/local/bin/pip3对应/usr/local/bin/python3。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 16:06:05