去年 11 月,Numpy团队的一份声明引发了Python
社区的关注:这一科学计算库即将放弃对于 Python 2.7
的支持,全面转向Python 3
。
不过,还是有很多Python
的项目依然还是使用2.7
的版本来进行开发和维护。尤其是我这种喜欢折腾新东西的人来说,一门语言同时在一个系统中存在多个版本是一个非常正常的事情。也经常有同学来问我Python
不同版本之间兼容和切换的问题。
今天给大家推荐一下Python
环境管理的工具,简单整理一下pyenv
相关的介绍和使用。
pyenv
是一个非常好用的Python
环境管理工具。
有这些主要特性:
- 方便的安装、管理不同版本的
Python
,而且不需要sudo
权限,不会污染系统的Python
版本 - 可以修改当前用户使用的默认
Python
版本 - 集成
virtualenv
,自动安装、激活 - 命令行自动补全
详细内容见 Github - pyenv/pyenv.
安装pyenv
curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash |
然后在~/.bashrc
或~/.zshrc
中添加如下内容:
export PATH="~/.pyenv/bin:$PATH" |
macOS
用户可以直接使用brew
这个包管理系统直接安装pyenv
,直接完成上述两步操作。
brew install pyenv |
常用命令
完整的命令行列表可以参考pyenv/COMMANDS.md.
安装Python
pyenv install 3.6.1 |
这个命令会为当前用户下载和安装Python 3.6.1
。
新建虚拟环境
pyenv virtualenv 3.6.1 py36 |
设置当前路径使用的 Python 环境
pyenv local py36 |
这个命令会在当前路径创建一个.python-version
文件,文件内容就是 py36
,即环境名称。所以一般需要把.python-version
添加到 .gitignore
.
下次进入该目录时,会自动激活虚拟环境,离开后自动退出。