2. 虚拟环境安装
2.1. virtualenv
virtualenv 是一个创建隔绝的Python环境的工具。virtualenv创建一个包含所有必要的可执行文件的文件夹,用来使用Python工程所需的包。
2.1.1. 安装virtualenv
pip install virtualenv
2.1.1. 基本使用
为一个工程创建一个虚拟环境:
$ cd my_project_dir
$ virtualenv venv #venv为虚拟环境目录名,目录名自定义
virtualenv venv 将会在当前的目录中创建一个文件夹,包含了Python可执行文件,以及 pip 库的一份拷贝,这样就能安装其他包了。虚拟环境的名字(此例中是 venv )可以是任意的;若省略名字将会把文件均放在当前目录。
在任何你运行命令的目录中,这会创建Python的拷贝,并将之放在叫做 venv 的文件中。
你可以选择使用一个Python解释器:
$ virtualenv -p /usr/bin/python2.7 venv # -p参数指定Python解释器程序路径
这将会使用 /usr/bin/python2.7 中的Python解释器。
要开始使用虚拟环境,其需要被激活:
$ source venv/bin/activate
从现在起,任何你使用pip安装的包将会放在 venv 文件夹中,与全局安装的Python隔绝开。
像平常一样安装包,比如:
$ pip install requests
如果你在虚拟环境中暂时完成了工作,则可以停用它:
$ . venv/bin/deactivate
这将会回到系统默认的Python解释器,包括已安装的库也会回到默认的。
要删除一个虚拟环境,只需删除它的文件夹。(执行 rm -rf venv )。
2.2. virtualenvwrapper
这里virtualenv 有些不便,因为virtual的启动、停止脚本都在特定文件夹,可能一段时间后,你可能会有很多个虚拟环境散落在系统各处,你可能忘记它们的名字或者位置。
鉴于virtualenv不便于对虚拟环境集中管理,所以推荐直接使用virtualenvwrapper。 virtualenvwrapper提供了一系列命令使得和虚拟环境工作变得便利。它把你所有的虚拟环境都放在一个地方。
提供了一系列命令使得和虚拟环境工作变得愉快许多。它把您所有的虚拟环境都放在一个地方。
- 将您的所有虚拟环境在一个地方。
- 包装用于管理虚拟环境(创建,删除,复制)。
- 使用一个命令来环境之间进行切换。
2.2.1. 安装virtualenvwrapper
安装(确保 virtualenv 已经安装了):
pip install virtualenvwrapper
export WORKON_HOME=$HOME/.virtualenvs # 设置环境变量
mkdir -p $WORKON_HOME # 创建虚拟环境管理目录
find / -name virtualenvwrapper.sh # 找到virtualenvwrapper.sh的路径
source 路径 # 激活virtualenvwrapper.sh
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/workspace
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh
默认virtualenvwrapper安装在下面python解释器中的site-packages,实际上需要运行virtualenvwrapper.sh文件才行;所以需要先进行配置一下:
- 找到virtualenvwrapper.sh的路径:
find / -name virtualenvwrapper.sh
- 运行virtualenvwrapper.sh文件:source 路径
ps:每次要想使用virtualenvwrapper 工具时,都必须先激活virtualenvwrapper.sh,另外,如果创建前要将即将的环境保存到Envs中,就要先设置一下环境变量:export WORKON_HOME=~/Envs,再搭建
对于Windows,您可以使用 virtualenvwrapper-win
安装(确保 virtualenv 已经安装了):
pip install virtualenvwrapper-win
在Windows下使用pip
命令安装过virtualenv
、virtualenvwrapper
以后,使用mkvirtualenv
命令创建虚拟环境时,默认创建位置在%USERPROFILE%Envs
下边,所以接下来我们来修改这个默认位置。
- 进入到
python
的安装目录里边,找到Scripts
目录,在这个目录里边有一个mkvirtualenv.bat
文件,打开它。 -
然后修改第二十四行,将后边的路径改为自己所希望的目录的路径。然后保存退出。
- 接下来就是修改环境变量了。
1、右键我的电脑
2、点击属性,然后点击高级属性
3、点击环境变量,然后在系统变量中选择新建
变量名:WORKON_HOME
变量值:D:\ProgramFiles\python\venv
4、最后确定保存。
- 接下来在使用
mkvirtualenv
命令创建虚拟环境便会发现创建虚拟环境的路径已经改变。
PS C:\Users\Administrator> mkvirtualenv py3
created virtual environment CPython3.8.2.final.0-64 in 648ms
creator CPython3Windows(dest=D:\ProgramFiles\python\venv\py3, clear=False, no_vcs_ignore=False, global=False)
seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=C:\Users\Administrator\AppData\Local\pypa\virtualenv)
added seed packages: pip==20.3.1, setuptools==51.0.0, wheel==0.36.1
activators BashActivator,BatchActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator
2.2.2. 基本使用
- 创建虚拟环境
[root@localhost ~]# mkvirtualenv venv
这样会在WORKON_HOME变量指定的目录下新建名为venv的虚拟环境。
- 退出虚拟环境
(venv) [root@localhost ~]# deactivate
[root@localhost ~]#
若想指定python版本,可通过 --python
指定python解释器
[root@localhost ~]# mkvirtualenv --python=/usr/bin/python2 py2
- 查看当前的虚拟环境目录
(py2) [root@localhost ~]# workon
py2
venv
- 切换到虚拟环境
(py2) [root@localhost ~]# workon venv
(venv) [root@localhost ~]#
- 删除虚拟环境
(venv) [root@localhost ~]# rmvirtualenv py2
Removing py2...
(venv) [root@localhost ~]# workon
venv
2.2.3. 其他有用的命令
lsvirtualenv # 列举所有的环境。
cdvirtualenv # 导航到当前激活的虚拟环境的目录中,比如说这样您就能够浏览它的 site-packages。
cdsitepackages # 和上面的类似,但是是直接进入到 site-packages 目录中。
lssitepackages # 显示 site-packages 目录中的内容。