pyenv: pip: 找不到命令



我正在尝试让Python 2.7在OSX El Capitan上与pyenv和virtualenv很好地配合使用。 我已经安装了带有自制软件的pyenv,然后是带有pyenv install 2.7.11的Python 2.7.11。 这描述了设置:

$ which python
/usr/local/bin/python
$ which virtualenv
/usr/local/bin/virtualenv
$ head -1 /usr/local/bin/virtualenv
#!/usr/local/bin/python
$ which pip
/Users/username/bin/pip
$ head -1 /Users/robinedwards/bin/pip
#!/usr/local/bin/python
$ pyenv install --list | grep 2.7.11
  2.7.11

.bashrc包含以下行:

export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

现在,当我尝试创建一个新的虚拟环境项目时:

$ pyenv virtualenv 2.7.11 newproject
pyenv: pip: command not found

知道我做错了什么吗?

我不确定该解决方案是否与问题匹配,但是在安装 pyenv、pyenv-virtualenv 并选择 python 版本后,我不得不以这种方式运行pip

$ pyenv exec pip install

我有同样的错误消息。该问题是由于 python 版本的安装失败造成的,因此找不到此版本的pip。事实上,连python都没有找到。

例:

pyenv install 3.7.2 # this failed, but I did not realize it failed at first
pyenv versions | grep 3.7.2

3.7.2

pyenv local 3.7.2
python --version

pyenv:python:找不到命令

所以问题不在于pip本身,而在于 python 版本的安装损坏。只要确保在安装带有 pyenv 的 python 版本时成功即可。

使用 pyenv 安装 python 版本后

pyenv install 3.7.13

我首先必须运行:

pyenv global 3.7.13  

现在皮普工作正常。

如果您没有从 python.org 提供的二进制文件中安装pyenv,则需要单独安装pip

安装所需的python版本后,下载并安装pip

wget https://bootstrap.pypa.io/get-pip.py
(sudo) python ./get-pip.py​
rm get-pip.py

参考: https://pip.pypa.io/en/stable/installing/

我在使用 zshpyenv 时配置错误。我通过删除我在pyenv上~/.zshrc的内容,删除环境和python版本(在我的情况下pyenv uninstall 3.9.0),然后运行以下内容来解决它:

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zprofile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zprofile
echo 'eval "$(pyenv init --path)"' >> ~/.zprofile
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.profile
echo 'eval "$(pyenv init --path)"' >> ~/.profile
echo 'eval "$(pyenv init -)"' >> ~/.zshrc

这直接来自提供的~/.pyenv/README所以我想这应该是显而易见的。重新安装python版本(pyenv install 3.9.0)并再次创建环境(pyenv virtualenv 3.9.0 my-env)后,pip在通过pyenv activate my-env激活环境时按预期工作

最新更新