首页 > 解决方案 > pyenv 使用系统 python 而不是虚拟环境

问题描述

我用pyenv很久了,没有遇到任何麻烦。我正确设置它并且一切正常。

然而,当我试图解决另一个问题时,我运行了一些破坏我的 pyenv 安装的行。

现在,当我激活任何 virtualenv 时,它会尝试使用系统的 python 而不是 pyenv:

$ pyenv activate foo
(foo) $ which python 
/usr/bin/python
(foo) $ pip --version
pip 20.3.4 from /home/rodrigo/.local/lib/python2.7/site-packages/pip (python 2.7)

我不确定究竟是哪一行破坏了它,它可能是以下内容:(foo) $ pip install --upgrade pip setuptools wheel 来自环境(我在foo它仍然工作时运行它),但可能是另一行。

我已经检查了~/.bashrc文件,没问题;重新启动控制台,甚至更改为不同的环境foo2,问题仍然存在......

我已经检查过类似的问题thisthis,但这些问题与我已经测试过的错误配置有关,并且没问题。

我正在使用 Ubuntu 18.04 LTS 和 pyenv 2.0.3-8-gad880754

更新我重新安装了 pyenv 但它仍然无法正常工作

标签: pythonpippyenv

解决方案


我通过更改使其工作~/.zshrc

改变

eval "$(pyenv init -)"

eval "$(pyenv init --path)"

并启动一个新的外壳。

似乎这是 2.0 中引入的更改。


推荐阅读