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.选择好虚拟的环境。
接下来,这个项目就已经用了虚拟环境了。