python中virtualenvwrapper安装与使用


Posted in Python onMay 20, 2018

virtualenv与virtualenvwrapper

当涉及到python项目开发时为了不污染全局环境,通常都会使用环境隔离管理工具virtualenv与virtualenvwrapper。

virtualenv是在项目底下执行生成venv环境目录以此来进行管理,这非常适合使用诸如pycharm这种集成环境配置的开发工具;那么当通过shell来运行virtualenv时便会显得非常麻烦,因为每次shell关闭再打开后都需要重新配置环境参数。

virtualenvwrapper是将所有的python项目虚拟环境环境都存放在一起,在使用shell配合小型开发工具就会非常方便。

virtualenvwrapper安装配置(MAC)

1、使用pip3安装

$ sudo pip3 install virtualenvwrapper

2、新建存放环境目录(笔者目录为Envs并放在Home下)

$ mkdir -p ~/Envs

3、配置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)

# 设置virtualenvwrapper
export WORKON_HOME=~/Envs
export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3
# 打开终端自动启用
source /usr/local/bin/virtualenvwrapper.sh

4、使配置生效

$ source ~/.bash_profile
$ source ~/.zshrc

virtualenvwrapper 使用

1、新建虚拟环境test并指定python版本python3

$ mkvirtualenv test --python=python3

执行lsvirtualenv指令查看所有环境,环境test位于~/Envs/test

$ lsvirtualenv
test
====

2、在项目底下激活虚拟环境test

workon test

3、其他指令

## 退出环境test
deactivate
## 删除环境test
rmvirtualenv test
## 更多指令可以在shell中输入virtualenv回车会有提示

irtualenvwrapper设置环境变量

当我们使用框架时经常需要执行pip install或者 export环境变量等额外的操作,这时就需要使用postactivate等钩子文件(当然钩子文件还有很多,具体感兴趣可以去查看官方文档)。

举个栗子:

想在test虚拟环境激活后设置环境变量

1、打开test的postactivate钩子文件vim ~/Envs/test/bin/postactivate

#!/bin/zsh
# This hook is sourced after this virtualenv is activated.

# 在当前会话加入环境变量
export ENV=dev

2、这时当执行workon test 激活虚拟环境后便会执行postactivate将项目环境变量Env设置为dev

3、在postactivate 中还可以执行诸如pip install -r requirements.txt,pip install -e conf等shell 操作

到目前为止基本的virtualenvwrapper使用就介绍完了

感谢大家对三水点靠木的支持,如果还有任何疑问可以在下方的留言区讨论。

Python 相关文章推荐
python 文件和路径操作函数小结
Nov 23 Python
Python实现的简单万年历例子分享
Apr 25 Python
Python基于pygame实现的弹力球效果(附源码)
Nov 11 Python
python文件与目录操作实例详解
Feb 22 Python
在unittest中使用 logging 模块记录测试数据的方法
Nov 30 Python
python文件拆分与重组实例
Dec 10 Python
pycharm打开命令行或Terminal的方法
Jan 16 Python
python识别图像并提取文字的实现方法
Jun 28 Python
Python如何合并多个字典或映射
Jul 24 Python
python遍历路径破解表单的示例
Nov 21 Python
python爬取代理ip的示例
Dec 18 Python
python获取对象信息的实例详解
Jul 07 Python
django静态文件加载的方法
May 20 #Python
django中静态文件配置static的方法
May 20 #Python
Python中跳台阶、变态跳台阶与矩形覆盖问题的解决方法
May 19 #Python
Python利用公共键如何对字典列表进行排序详解
May 19 #Python
Python中一些不为人知的基础技巧总结
May 19 #Python
Python + selenium自动化环境搭建的完整步骤
May 19 #Python
pandas中去除指定字符的实例
May 18 #Python
You might like
PHP操作数组相关函数
2011/02/03 PHP
php使用ZipArchive函数实现文件的压缩与解压缩
2015/10/27 PHP
PHP数据库处理封装类实例
2016/12/24 PHP
图片上传插件jquery.uploadify详解
2013/11/15 Javascript
javascript表格隔行变色加鼠标移入移出及点击效果的方法
2015/04/10 Javascript
用JavaScript来美化HTML的select标签的下拉列表效果
2015/11/17 Javascript
jQuery中$.ajax()方法参数解析
2016/10/22 Javascript
vue技术分享之你可能不知道的7个秘密
2018/04/09 Javascript
通过webpack引入第三方库的方法
2018/07/20 Javascript
webpack css加载和图片加载的方法示例
2018/09/11 Javascript
Node.js 使用axios读写influxDB的方法示例
2018/10/26 Javascript
详解vuex数据传输的两种方式及this.$store undefined的解决办法
2019/08/26 Javascript
在vue-cli创建的项目中使用sass操作
2020/08/10 Javascript
Vue左滑组件slider使用详解
2020/08/21 Javascript
简单掌握Python的Collections模块中counter结构的用法
2016/07/07 Python
Python爬虫爬取一个网页上的图片地址实例代码
2018/01/16 Python
Python常见字典内建函数用法示例
2018/05/14 Python
python用户评论标签匹配的解决方法
2018/05/31 Python
Python将多个list合并为1个list的方法
2018/06/27 Python
python pyinstaller 加载ui路径方法
2019/06/10 Python
Python搭建HTTP服务过程图解
2019/12/14 Python
HTML5实现获取地理位置信息并定位功能
2015/04/25 HTML / CSS
Structs界面控制层技术
2013/10/11 面试题
会计学财务管理专业个人的自我评价
2013/10/19 职场文书
教师自荐信
2013/12/10 职场文书
年检委托书
2014/08/30 职场文书
道德模范事迹材料
2014/12/20 职场文书
先进单位事迹材料
2014/12/25 职场文书
大学生操行评语大全
2014/12/31 职场文书
文明旅游倡议书
2015/04/28 职场文书
小学教学工作总结2015
2015/05/13 职场文书
五一晚会主持词
2015/07/01 职场文书
退伍军人感言
2015/08/01 职场文书
《乌鸦喝水》教学反思
2016/02/19 职场文书
干货:如何写好工作总结报告!
2019/05/10 职场文书
创业计划书之零食店(进口)
2019/09/24 职场文书