如题所述,我需要搭建一个如不同版本的Python编译器开发或运行环境,此时需要用到Pyenv可实现;又如我在Django Web开发时不同项目需要不同的Django版本,此时需要用到Virtualenv(VirtualenvWrapper)即可实现;下面主要从前面说的三者的安装以及使用说明来介绍。
一:Virtualenv/Virtualenvwrapper/Pyenv三者作用简介
1.1 Virtualenv用来隔离Python运行环境,而VirtualenvWrapper可以说是Virtualenv的高级版,有了它管理(创建/切换/删除等)Python的虚拟环境更加方便。
1.2 Pyenv是用来控制Python编译器版本的。
二:Virtualenv/Virtualenvwrapper/Pyenv 三者安装介绍
2.1 Virtualenv/Virtualenvwrapper安装。
2.1.1 这里我们使用pip工具安装即可,当然也可下载源码安装;参考:Virtualenv Installation
由于pip默认访问的是python官网镜像站点,国内访问速度慢,这里配置pip.conf自定义为国内豆瓣镜像
vim ~/.pip/pip.conf
[global]
index-url=https://pypi.doubanio.com/simple
format=columns
pip install virtualenv virtualenvwrapper
2.1.2 编辑系统环境配置~/.bashrc或者~/.bash_profile
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/workspace
source /usr/local/bin/virtualenvwrapper.sh
2.2 Pyenv安装,参考:Pyenv Installation
2.2.1 首先安装其pyenv的相关依赖包,下述环境为CentOS6.6
yum install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel
2.2.2 curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash
2.2.3 编辑~/.bash_profile或者~/.bashrc(Ubuntu)
export PATH="/root/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
三:Virtualenv/Virtualenvwrapper/Pyenv的使用
3.1 Pyenv管理Python版本编译器
pyenv install --list #列出可安装的包
pyenv install/uninstall 3.5.2 #安装或者卸载版本为3.5.2的Python编译器
pyenv versions/version #列出当前Python版本以及可用的所有Python版本
pyenv global system/3.5.2 #切换全局Python版本为系统默认或者指定版本(3.5.2)
其余命令见pyenv help
3.2 Virtualenv管理Python运行虚拟环境,这里就直接使用virtualenvwrapper封装的命令
mkproject django-env -p xxx #创建名为"django-env"虚拟环境
workon (django-env) #查看或者切换虚拟环境到django-env
rmvirtualenv django-env #删除名为"django-env"的虚拟环境