如何让pyenv找到已安装的python版本

时间:2016-04-01 12:48:08

标签: python installation pyenv

我遇到了pyenv的以下矛盾问题:

$ pyenv global python2.7.10
pyenv: version `python2.7.10' not installed
$ pyenv install 2.7.10
pyenv: /Users/xeli/.pyenv/versions/2.7.10 already exists
continue with installation? (y/N) 

此外:

$ python2.7
pyenv: python2.7: command not found

The `python2.7' command exists in these Python versions:
  2.7.10

根据需要垫片在PATH上:

$ echo $PATH
/Users/xeli/.pyenv/shims:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin

shims目录中没有任何可疑内容:

$ ls ~/.pyenv/shims | grep python2
ipython2
python2
python2-config
python2.6
python2.6-config
python2.7
python2.7-config

.profile我有:

export PYENV_ROOT=~/.pyenv
if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi

因此,应该在启动时初始化pyenv。

我无法弄清楚如何解决这个问题。有什么想法吗?

2 个答案:

答案 0 :(得分:6)

pyenv似乎要求在当前目录中为.python-version中的默认版本设置显式.pyenv/version文件。这在a closed GitHub issue中解释。

通过创建.python-version文件解决了该问题。这可以通过$ pyenv local 2.7.10自动完成。

因此,最初的问题是错误的错误消息。我创建了a new issue来修复它。

答案 1 :(得分:1)

简短回答 - 您需要做的就是:

pyenv global 2.7.10

Python 2.7.10解释器版本的pyenv名称仅为2.7.10,而不是python2.7.10。您可以使用以下命令获取所有已安装版本的列表:

pyenv versions