Pyenv在Mac/Linux上设置的坑

之所以从virtualenv转到pyenv的原因,主要是Visual Studio Code不支持virtualenv生成的文件夹。

由于virtualenv生成的python文件是链接,因此会直接将链接的正主的文件夹作为项目python解析器的文件夹,为了好好用VSC,只能放弃virtualenv。

说了这么多,说一下virtualenv转换pyenv的坑。

安装很简单,brew install pyenv就完成了。

主要的问题出在环境配置上,由于系统默认已经自带几个python。

按照官网以及网上教程改完之后,pip找不到,且使用python查看还是系统版本(此处1000个XXXX),而使用原先手工source activate的方式可行。

一番调查后,解决方法如下,将下面代码写入zsh的.zshrc文件(bash类似)。

1# pyenv
2export PYENV_ROOT="$HOME/.pyenv"
3export PATH="$PYENV_ROOT/shims:$PATH"
4eval "$(pyenv init -)"

此处和网上的区别在于:

1PYENV_ROOT/shims 新版本换了个名字 
2PYENV_ROOT/bin 在新版本中不存在

至此问题彻底解决。