virtualenv python的虚拟环境

 

官网:     https://virtualenv.pypa.io/en/latest/installation.html#via-pip

virtualenv通过创建独立Python开发环境的工具, 来解决依赖、版本问题

安装: 

python -m pip install --user virtualenv
python -m virtualenv --help

基本使用:

dahu@dahu-OptiPlex-3046:~/myfile$ virtualenv ENV  #创建一个名为ENV的目录, 并且安装了ENV/bin/python, 创建了lib,include,bin目录
New python executable in /home/dahu/myfile/ENV/bin/python
Installing setuptools, pip, wheel...done.
dahu@dahu-OptiPlex-3046:~/myfile$ cd ENV
dahu@dahu-OptiPlex-3046:~/myfile/ENV$ ls -lh
total 20K
drwxrwxr-x 2 dahu dahu 4.0K 9月  11 14:10 bin
drwxrwxr-x 2 dahu dahu 4.0K 9月  11 14:10 include
drwxrwxr-x 3 dahu dahu 4.0K 9月  11 14:10 lib
drwxrwxr-x 2 dahu dahu 4.0K 9月  11 14:10 local
-rw-rw-r-- 1 dahu dahu   60 9月  11 14:10 pip-selfcheck.json
  • lib,所有安装的python库都会放在这个目录中的lib/pythonx.x/site-packages/
  • bin,bin/python是在当前环境是使用的python解释器

继承/usr/lib/python2.7/site-packages下的所有库,当前版本默认是不继承全局库的,以前的用法是 --no-site-packages ,这个弃用了

virtualenv --system-site-packages ENV

目前我用的virtualenv的版本是

dahu@dahu-OptiPlex-3046:~/myfile/ENV$ virtualenv --version
15.1.0

激活virtualenv

dahu@dahu-OptiPlex-3046:~/myfile/ENV$ source bin/activate
(ENV) dahu@dahu-OptiPlex-3046:~/myfile/ENV$ 

终端发生了变化,查看当前库,只有三个

(ENV) dahu@dahu-OptiPlex-3046:~/myfile/ENV$ pip list
DEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning.
pip (9.0.1)
setuptools (36.4.0)
wheel (0.30.0)
pip freeze  #显示所有依赖
pip freeze > requirement.txt  #生成requirement.txt文件
pip install -r requirement.txt  #根据requirement.txt生成相同的环境

关闭virtualenv

使用下面命令

$ deactivate

指定python版本

可以使用-p PYTHON_EXE选项在创建虚拟环境的时候指定python版本

#创建python2.7虚拟环境
➜  Test git:(master) ✗ virtualenv -p /usr/bin/python2.7 ENV2.7
Running virtualenv with interpreter /usr/bin/python2.7
New python executable in ENV2.7/bin/python
Installing setuptools, pip...done.
#创建python3.4虚拟环境
➜  Test git:(master) ✗ virtualenv -p /usr/local/bin/python3.4 ENV3.4
Running virtualenv with interpreter /usr/local/bin/python3.4
Using base prefix '/Library/Frameworks/Python.framework/Versions/3.4'
New python executable in ENV3.4/bin/python3.4
Also creating executable in ENV3.4/bin/python
Installing setuptools, pip...done.

基本解决python版本冲突问题和python库不同版本的问题

第二部分

 virtualenv 也可以用在pycharm中

项目打开好了之后,设置里面: 1.找到项目解释器 2,创建虚拟环境,3.选择好虚拟的环境。

 

 

接下来,这个项目就已经用了虚拟环境了。

 

posted @ 2017-09-11 14:43  dahu1  Views(510)  Comments(0Edit  收藏  举报