python中virtualenvwrapper安装与使用

 更新时间:2018年05月20日 09:38:35   作者:fidding  
本篇文章给大家介绍了python环境神器virtualenvwrapper安装与使用,对此有需要的朋友可以跟着操作一下。

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里面None True False之间的区别

    浅谈Python里面None True False之间的区别

    这篇文章主要介绍了浅谈Python里面None True False之间的区别,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • Python使用socket_TCP实现小文件下载功能

    Python使用socket_TCP实现小文件下载功能

    这篇文章主要介绍了Python使用socket_TCP实现小文件下载功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • Python中的json内置库详解

    Python中的json内置库详解

    这篇文章主要介绍了Python中的json内置库详解,在学习做自动化测试的过程中,python 里有一个内置的 json 库,必须要学习好,json 是用于存储和交换数据的语法,是一种轻量级的数据交换式使用场景,需要的朋友可以参考下
    2023-08-08
  • Python爬虫实现vip电影下载的示例代码

    Python爬虫实现vip电影下载的示例代码

    这篇文章主要介绍了Python爬虫实现vip电影下载的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • Python RuntimeWarning:invalid value encountered in double_scalars处理

    Python RuntimeWarning:invalid value encounter

    这篇文章主要介绍了Python RuntimeWarning:invalid value encountered in double_scalars处理,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • python中的sys模块详解

    python中的sys模块详解

    sys模块是与python解释器交互的一个接口,sys 模块提供了许多函数和变量来处理 Python 运行时环境的不同部分,这篇文章主要介绍了python之sys模块详解,需要的朋友可以参考下
    2022-11-11
  • matplotlib教程——强大的python作图工具库

    matplotlib教程——强大的python作图工具库

    这篇文章主要介绍了python matplotlib的相关资料,帮助大家更好的利用python matplotlib库绘制图表,感兴趣的朋友可以了解下
    2020-10-10
  • Python用 KNN 进行验证码识别的实现方法

    Python用 KNN 进行验证码识别的实现方法

    这篇文章主要介绍了Python用 KNN 进行验证码识别的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2018-02-02
  • Python库functools示例详解

    Python库functools示例详解

    Python 的 functools 模块提供了一些常用的高阶函数,也就是用于处理其它函数的特殊函数。换言之,就是能使用该模块对 所有可调用对象( 即 参数 或(和) 返回值 为其他函数的函数 ) 进行处理,这篇文章主要介绍了Python库functools详解,需要的朋友可以参考下
    2023-01-01
  • Python中处理Session和Cookie的方法

    Python中处理Session和Cookie的方法

    这篇文章主要介绍了Python中处理Session和Cookie的方法,本文介绍了Python中如何处理Session和Cookie,包括获取、设置、删除和使用Session和Cookie的相关方法和技巧,主要涉及Python的requests、http.cookiejar和Flask等库和框架
    2023-05-05

最新评论