使用虚拟环境virtualenv/Virtualenvwrapper隔离多个python

使用虚拟环境virtualenv/Virtualenvwrapper隔离多个python

virtualenv

系统中的多个python混用会导致$PYTHONPATH混乱,或者各个工程对于package的版本要求不同等等情况。有一个简单的解决方案就是用virtualenv来隔离多个python,其本质只是实现隔离不同python中$PYTHONPATH的路径,当然也可以衍生到隔离多个$PATH。

安装virtualenv

# Ubuntu/Linux 64-bit $ sudo apt-get install python-pip python-dev python-virtualenv # Mac OS X $ sudo easy_install pip $ sudo pip install --upgrade virtualenv

Virtualenvwrapper

当有很多个虚拟环境时,我们可能会记不清有哪些虚拟环境,要搞清楚每个环境中有哪些package就更难了,因此这里推荐用Virtualenvwrapper来对虚拟环境进行管理。

配置Virtualenvwrapper

在安装Virtualenvwrapper之前用pip安装上virtualenv或用apt-get安装上python-virtualenv

$ sudo pip install virtualenvwrapper 

把下面几行加入~/.bashrc

 

export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python2.7 # 这句是为了防止环境变量$PATH中已有其它环境的python,需要换成自己需要的python路径

export WORKON_HOME=$HOME/.virtualenvs # 放所有虚拟环境的地方

source /usr/local/bin/virtualenvwrapper.sh

 

在终端输入source ~/.bashrc

新建Virtualenv

新建虚拟环境的指令由原来的virtualenv vpath更换为mkvirtualenv vname,默认把路径放到了$WORKON_HOME下,并且原来的--system-site-packages和--no-site-packages等选项都还是可以用的。

mkvirtualenv VirtalenvName

建好之后默认就已经进入这个虚拟环境了(命令行前会有一个括号+环境名的提示),退出是deactivate

 

Virtualenvwrapper常用指令

mkvirtualenv 创建环境
workon 切换到环境
deactivate 注销当前环境
lsvirtualenv 列出所有环境
rmvirtualenv 删除环境
cpvirtualenv 复制环境
cdsitepackages cd到当前环境的site-packages目录
lssitepackages 列出当前环境中site-packages内容
setvirtualenvproject 绑定现存的项目和环境
wipeenv 清除环境内所有第三方包
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/119603.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • js如何创建数组

    js如何创建数组如何创建数组使用数组之前首先要创建,而且需要把数组本身赋至一个变量。好比我们出游,要组团,并给团定个名字“云南之旅”。创建数组语法:varmyarray=newArray();        我们创建数组的同时,还可以为数组指定长度,长度可任意指定。varmyarray=newArray(8);//创建数组,存储8个数据。 注意:1.创

    2022年5月18日
  • 隐性域名转发html代码,你知道显性URL转发/隐性URL转发记录添加方式吗

    隐性域名转发html代码,你知道显性URL转发/隐性URL转发记录添加方式吗显性URL转发/隐性URL转发其实URL转发里面的两种转发方式,根据跳转后的是否改变域名来判断显性还是隐形。当然根据不同的需要,可以选择不同的转发方式。今天小编为大家介绍的是隐/显性URL转发记录添加方式。显性URL转发/隐性URL转发URL是统一资源定位符,对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指…

    2022年10月18日
  • Docker创建MySQL集装箱

    Docker创建MySQL集装箱

    2022年1月5日
  • phpstrom2021激活码_通用破解码「建议收藏」

    phpstrom2021激活码_通用破解码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月17日
  • nginx支持的负载均衡算法_nginx算法

    nginx支持的负载均衡算法_nginx算法1:Nginx负载均衡算法(1):轮询(默认)每个请求按时间顺序逐一分配到不同的后端服务,如果后端某台服务器死机,自动剔除故障系统,使用户访问不受影响。upstreamtomcat{server192.168.200.113:8080weight=1;server192.168.200.114:8080weight=1;}(2):Weight(轮询权值)Weight的值越大分配到的访问概率越高,主要用于后端每台服务器性能不均衡…

    2022年10月10日
  • 什么是RIA 技术?

    什么是RIA 技术?RIA是什么东西,这是真么技术。。。我写这篇博客中,就带着这么两个问题开始收集资料RIA(RichInterfaceApplications)富界面应用,俗称胖客户端.RIA的优势RIA具有的

    2022年7月4日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号