zoukankan      html  css  js  c++  java
  • python虚拟环境virtualenv高级篇

    我曾经写过一篇virtualenv的博客:http://www.cnblogs.com/anpengapple/p/5907416.html 总体来讲还是适用的,不过稍微傻了一点。这一篇的内容有两个:首先是对上一篇进行两点补充,然后是介绍一个新的玩具——virtualenvwrapper。

    关于上一次介绍virtualenv的补充:

    1、virtualenv目录不需要拷贝两份到/usr/local中,只需要拷贝一份即可,然后把里面的virtualenv.py文件拷贝一份,放在同一目录下,改名为virtualenv3.py;内容的改法和软链接的建立就跟之前一样了。

    2、其实更正确的姿势是,使用-p选项控制python的版本

    virtualenv -p /usr/bin/python2.7 env

    这样就建立了一个python2.7环境的虚拟环境env。

    3、我曾见过这样一种情况,在本机已经安装过某个库,在虚拟环境中就无法再安装了,会报错。但是虚拟环境中又没有安装这个库,不能直接使用。解决办法是,加个开关

    virtualenv env --no-site-packages

    这样就能把本机环境中的库全部引入虚拟环境中。在虚拟环境中可以进行库的升级,而不会影响本机中原来库的版本(黑魔法简直帅到飞起)。

    好了,下面开始介绍virtualenvwrapper。这个东西是virtualenv的扩展工具,可以方便地管理和使用不同的虚拟环境。安装过程很简单

    sudo easy_install virtualenvwrapper

    这么一行命令即可。安装好之后,在/usr/local/bin/virtualenvwrapper.sh中写着virtualenvwrapper的使用方法。。。当然,看英文还有点麻烦,我简单地说一下:

    首先在$HOME下创建一个隐藏目录

    mkdir $HOME/.virtualenvs

    然后打开~/.bashrc文件,在结尾添加两行

    export WORKON_HOME=$HOME/.virtualenvs
    source /usr/local/bin/virtualenvwrapper.sh

    然后执行

    source ~/.bashrc

    之后virtualenvwrapper就设置好了。之后,可以使用 workon 命令查看下当前virtualenvwrapper中的虚拟环境列表。。。啥也没出来对吧,不用懵逼,还没使用virtualenvwrapper来建立虚拟环境,当然没有列表了。

    接下来可以使用

    mkvirtualenv env

    来创建一个虚拟环境。再用workon命令看看,是不是已经有一个名为env的虚拟环境了?

    那么,接下来要怎么使用呢?更简单了。

    workon env

    这样就进入了这个虚拟环境中了。接下来就可以尽情的pip了。要退出的话,还是正常的deactivate命令。

    如果要删除这个虚拟环境,使用

    rmvirtualenv env

    即可。

    同样滴,在使用mkvirtualenv 命令的时候,用-p选项可以指定使用哪一个python环境。

    virtualenvwrapper的好处是,把虚拟环境全局管理起来了,不用针对每个项目建立。同一类项目可以建立同样的虚拟环境,也不用管它在哪,直接一个workon就可以。

    还是那句话,等你用python开发项目多了,就知道虚拟环境有多重要了。不会使用的话,一定会被各种环境恶心吐的。

  • 相关阅读:
    【监控】一些关于应用级别监控的总结
    【监控】WebServer入库与缓存更新代码优化小计
    【监控】天机镜——优土大数据平台应用级别监控利器
    【监控】数据平台运营实战之如何打造应用级别的监控系统
    【分布式协调器】Paxos的工程实现-Cocklebur状态转移
    【分布式协调器】Paxos的工程实现-cocklebur选举
    【分布式协调器】Paxos的工程实现-cocklebur简介(二)
    【分布式协调器】Paxos的工程实现-cocklebur简介(一)
    【语言基础】c++ 基本数据类型与字节数组(string,char [] )之间的转化方法
    【基础】利用thrift实现一个非阻塞带有回调机制的客户端
  • 原文地址:https://www.cnblogs.com/anpengapple/p/6430022.html
Copyright © 2011-2022 走看看