zsh:/usr/local/bin/pipenv:错误的解释器:/usr/local/opt/python/bin/python3.7:没有这样的文件或目录

Rya*_*yne 5 python macos zsh pyenv pipenv

我最近从 bash 切换到 zsh (MacOS)。自从切换以来,我就没有使用过 pipenv。现在,当我运行任何 pipenv 命令时,我收到以下错误:

$ pipenv install
zsh: /usr/local/bin/pipenv: bad interpreter: /usr/local/opt/python/bin/python3.7: no such file or directory
Run Code Online (Sandbox Code Playgroud)

我使用 pyenv 进行 Python 依赖管理:

$ which python
/Users/ryan.payne/.pyenv/shims/python
Run Code Online (Sandbox Code Playgroud)

我的默认 python 版本是 3.7.3:

$ pyenv versions
  system
  2.7.16
  3.6.8
* 3.7.3 (set by /Users/ryan.payne/.pyenv/version)
Run Code Online (Sandbox Code Playgroud)

似乎 pipenv 没有使用我的 pyenv 版本的 Python。我如何让 pipenv 再次工作?

Tyl*_*eck 14

您不需要卸载任何东西。只需更改解释器即可/usr/local/bin在 pyenv 中使用当前的 python 路径:

type python3

复制路径

vi /usr/local/bin/pipenv

它看起来像这样:

在此输入图像描述

一旦更改,您可能需要再次下载 Pipenv。别担心,你的环境很好。

pip install pipenv

去你的环境中玩吧


Mat*_*nea 6

我有同样的错误awscli。解决方案是通过自制软件安装 python@3.7,然后cp将该安装安装到awscli预期的目录中。

brew install python@3.7
cp -r /usr/local/opt/python@3.7/bin/python3.7 /usr/local/opt/python/bin/python3.7

Run Code Online (Sandbox Code Playgroud)