当涉及到python项目开发时为了避免污染全局环境,一般都会使用环境隔离管理工具virtualenv
与virtualenvwrapper
。python
virtualenv
是在项目底下执行生成venv
环境目录以此来进行管理,这很是适合使用诸如pycharm
这种集成环境配置的开发工具;那么当经过shell
来运行virtualenv
时便会显得很是麻烦,由于每次shell
关闭再打开后都须要从新配置环境参数。shell
virtualenvwrapper
是将全部的python项目虚拟环境环境都存放在一块儿,在使用shell
配合小型开发工具就会很是方便。vim
使用pip3
安装bash
$ sudo pip3 install virtualenvwrapper
新建存放环境目录(笔者目录为Envs
并放在Home
下)app
$ mkdir -p ~/Envs
配置virtualenvwrapper环境(使用python3
)框架
i. 打开bash_profile
,执行vim ~/.bash_profile
并写入工具
# 设置virtualenvwrapper export WORKON_HOME=~/Envs export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3 # 打开终端自动启用 source /usr/local/bin/virtualenvwrapper.sh
ii. 打开.zshrc
,执行vim ~/.zshrc
并写入(若是有安装item2
与oh-my-zsh
)post
# 设置virtualenvwrapper export WORKON_HOME=~/Envs export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3 # 打开终端自动启用 source /usr/local/bin/virtualenvwrapper.sh
使配置生效开发工具
$ source ~/.bash_profile $ source ~/.zshrc
新建虚拟环境test
并指定python版本python3
ui
$ mkvirtualenv test --python=python3
执行lsvirtualenv
指令查看全部环境,环境test
位于~/Envs/test
$ lsvirtualenv test ====
在项目底下激活虚拟环境test
workon test
其余指令
## 退出环境test deactivate ## 删除环境test rmvirtualenv test ## 更多指令能够在shell中输入virtualenv回车会有提示
当咱们使用框架时常常须要执行pip install
或者 export
环境变量等额外的操做,这时就须要使用postactivate
等钩子文件(固然钩子文件还有不少,具体感兴趣能够去查看官方文档)。
举个栗子:
想在test
虚拟环境激活后设置环境变量
打开test
的postactivate
钩子文件vim ~/Envs/test/bin/postactivate
#!/bin/zsh # This hook is sourced after this virtualenv is activated. # 在当前会话加入环境变量 export ENV=dev
workon test
激活虚拟环境后便会执行postactivate
将项目环境变量Env
设置为dev
postactivate
中还能够执行诸如pip install -r requirements.txt
,pip install -e conf
等shell
操做到目前为止基本的virtualenvwrapper
使用就介绍完了
原文地址:http://www.fidding.me/article/71
happy coding!