使用virtualenv搭建Python虚拟环境

virtualenv, virtualenvwrapper

Posted by baiyf on October 12, 2018

使用virtualenv搭建Python虚拟环境

工作的时候,经常会需要用到一些包的不同版本,总是uninstall/install效率必然很低,所以需要使用virtualenv来隔离python环境,解决包冲突的问题

下面以centos系统为例介绍一下virtualenv及其管理工具virtualenvwrapper的使用方法

virtualenv

安装

可以使用pip安装也可以使用yum安装

yum install python-virtualenv
# 或
pip install virtualenv

创建虚拟环境

使用virtualenv命令创建虚拟环境:virtualenv [虚拟环境名]

mkdir pyenv #创建虚拟环境仓库
cd pyenv
virtualenv --python /usr/local/python work

执行后会在本地产生一个同名文件夹 ,--python参数用于指定使用的python版本

另外,可以使用--system-site-packages参数来之定是哪个系统环境下的global site packags

virtualenv --system-site-packages work

启动与退出虚拟环境

cd work/
source bin/activate

此时命令行前面会出现一个小括号(work),表示进入了work虚拟环境

退出虚拟环境

deactivate

virtualenvwrapper

virtualenvwrapper是一种virtualenv虚拟环境的管理工具

安装

安装同样有两种方式

yum install python-virtualenvwrapper
# 或
pip install virtualenvwrapper

配置

查找这个配置脚本的位置,因为你环境里python的安装目录很可能与网上的教程不同

find / -name virtualenvwrapper.sh

设置环境变量,把下面两行加到~/.bashrc

export WORKON_HOME=/home/pyenv #虚拟环境目录
source /**上一步找到的path**/virtualenvwrapper.sh

到这里virtualenvwrapper的配置就完成了,可以开始检验一下了~

虚拟环境管理

创建虚拟环境:mkvirtualenv [虚拟环境名]

mkvirtualenv paddle
mkvirtualenv tensorflow

mkvirtualenv同样使用—python参数来之定python版本

列出所有虚拟环境:

lsvirtualenv -b

启动/切换虚拟环境:

workon paddle
workon tensorflow

进入到当前虚拟环境目录:

cdvirtualenv

删除虚拟环境:

rmvirtualenv paddle
rmvirtualenv tensorflow

复制虚拟环境:

cpvirtualenv work develop # 复制work为develop

lssitepackages列出当前环境所有site-packages内容,cdsitepackages清楚环境内所有第三方包