python的虚拟环境

什么是虚拟环境

python特有的一种软件环境,创建多个python环境,各个环境之间完全隔离,互不影响。它可以用来解决Python项目开发和运行过程中的依赖项和版本问题,而不必和其他项目的Python环境以及全局的Python环境发生冲突。

安装

$ pip install virtualenv

注:Linux下默认未安装pip,需要手动安装pip命令。

sudo apt install python-pip    #python2.7安装
sudo apt install python3-pip   # python3安装 
pip install --upgrade pip      #pip 更新

创建虚拟环境

安装完成后,可以使用 virtualenv 命令创建放置虚拟环境的目录:

$ virtualenv  [OPTIONS]  [虚拟环境名称]

-p PYTHON_EXE, --python=PYTHON_EXE 指定生成的虚拟环境使用的Python解释器:

#顺序都可以
 virtualenv -p /usr/bin/python3.6 ENV
 virtualenv  ENV --python=python3.6
 virtualenv  --python=python3.6 ENV

ENV/libENV/include 目录中包含了虚拟环境ENV使用的库文件。在虚拟环境中安装的第三方包会安装在 ENV/lib/python3.4/site-packages 目录下。

ENV/bin 目录里面放置了可执行文件,在里面有新安装的Python 包中的可执行程序,包括pip等相关工具。

OPTIONS参数:

--no-site-packages 参数:

默认情况下,虚拟环境会依赖系统环境中的 sit package,就是说系统中已经安装好的第三方 package 也会安装在虚拟环境中,如果不想依赖这些 package,那么可以加上 --no-site-packages 参数建立虚拟环境。

$  virtualenv --no-site-packages [虚拟环境名称]
--version 显示软件的版本号:
# virtualenv --version
-h, --help 显示帮助信息:
# virtualenv -h
--no-setuptools 在新建的虚拟环境中不安装工具包:
# virtualenv --no-setuptools ENV
--no-pip 在新建的虚拟环境中不安装pip:
# virtualenv --no-pip ENV
--no-wheel 在新建的虚拟环境中不安装 wheel:
# virtualenv --no-wheel ENV

启动环境

新创建的虚拟环境目录中有一个启动脚本 ENV/bin/activate ,直接使用 source 命令来启动虚拟环境。

$ source ENV/bin/activate

退出环境

退出当前虚拟环境使用 deactivate 命令。

$ deactivate

安装 virtualenvwrapper 扩展包

Virtaulenvwrapper 是 virtualenv 的扩展包,可以把新创建的环境记录下来,不需要每次启动虚拟环境时都执行一遍 source 命令,可以更方便的管理虚拟环境。
它可以实现:
1、将所有虚拟环境整合在一个目录下
2、管理(新增,删除,复制)虚拟环境
3、快速切换虚拟环境

安装 virtualenvwrapper

$ pip install virtualenvwrapper

此时还不能使用virtualenvwrapper,默认virtualenvwrapper安装在/usr/local/bin下面,实际上你需要运行virtualenvwrapper.sh文件才行,里面有安装步骤,我们照着操作把环境设置好。

创建存放虚拟环境的目录

# $HOME是用户主目录
$ mkdir $HOME/.virtualenvs

进入 用户主目录,打开 .bashrc 文件,添加如下代码:

export WORKON_HOME=$HOME/.virtualenvs
#export PROJECT_HOME=$HOME/Devel
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh
WORKON_HOME: 告诉 virtualenvwrapper 在哪里放置你的虚拟环境,默认是在 $HOME/.virtualenvs 目录下。如果这个目录不存在,virtualenvwrapper 运行的时候会自动创建它。

PROJECT_HOME :告诉virtualenvwrapper在哪里存放你的项目的工作目录

执行 source 命令,使刚添加的代码生效:

$ source .bashrc

windows下安装virtualenvwrapper

pip install virtualenvwrapper-win

设置环境变量

在系统变量中新建“变量名”:WORKON_HOME:“你自定义的路径”。

使用 virtualenvwrapper

虚拟环境相关操作:

lsvirtualenv: 列出虚拟环境列表(个人喜欢用第二个)
workon+Enter: 列出虚拟环境列表
mkvirtualenv [虚拟环境名称]: 新建虚拟环境
workon [虚拟环境名称]: 切换虚拟环境
rmvirtualenv [虚拟环境名称]: 删除虚拟环境
deactivate: 离开虚拟环境

相关推荐