Heroku Local命令无法运行:/bin/sh: python: command not found
解决
heroku local提示python: command not found的问题 你的判断没错,问题确实出在系统只有python3可执行文件,没有python命令的映射。下面是几种直接的解决办法:
方法一:创建python到python3的软链接(macOS/Linux通用)
利用系统软链接把已有的python3映射成python命令:
- 确认你的
python3路径为/Library/Frameworks/Python.framework/Versions/3.8/bin/python3 - 执行以下命令创建软链接(需要管理员权限):
sudo ln -s /Library/Frameworks/Python.framework/Versions/3.8/bin/python3 /usr/local/bin/python - 验证:执行
which python,如果输出/usr/local/bin/python就说明成功了,再运行heroku local即可。
方法二:修改项目的Procfile
如果不想改动系统环境,可以直接修改Heroku的启动配置:
- 打开项目根目录下的
Procfile文件 - 找到类似
web: python app.py的启动命令,把python替换成python3,比如改成:web: python3 app.py - 保存文件后重新执行
heroku local。
方法三:用pyenv管理Python版本(长期维护推荐)
如果经常切换Python版本,用pyenv来统一管理更方便:
- 安装pyenv后,在项目目录执行:
pyenv local 3.8.0 - 此时项目目录下的
python命令会自动指向pyenv管理的3.8版本,无需额外配置即可运行heroku local。
内容的提问来源于stack exchange,提问作者Samuel Bone
相关产品推荐
相关产品推荐

