• Windows下的python虚拟环境设置


    Windows下的python虚拟环境设置:

    virtualenv

        在python开发中,我们可能会遇到一种情况:就是当前的项目依赖的是某一个版本,但是另一个项目依赖的是另一个版本,这样就会造成依赖冲突。在这种情况之下,我们就需要一个工具能够将这两种或几种不同版本的环境隔离开来,需要哪个版本就切换到哪个版本做为默认版本,让每个版本应用都各自拥有一套“独立”的Python运行环境。而virtualenv就可以解决这种情况,它通过创建一个虚拟化的python运行环境,在同一计算机中隔离多个python版本的工具,将我们所需的依赖安装进不同的虚拟环境中,使不同项目之间相互独立、不干扰。也就是说在这个环境中你可以安装私有包,而且不会影响系统中安装的全局Python解释器。
    

    安装: pip install virtualenv

        如果安装不成功也可以下载virtualenv源码package,通过执行setup.py来安装virtualenv。同时因为python2和python3的不同,因此也有了两种pip和pip3两种python包安装工具,而两种工具安装的virtualenv也是不相同的,python2安装的virtualenv虚拟化出来的python运行环境是python2的,python3安装的virtualenv默认虚拟环境则是python3的。
    

    使用方法

    1. 创建环境:进入要创建的虚拟环境的目录执行下面的命令;
    virtualenv   [环境名] 
    

    这会在当前目录下创建一个独立的Python运行环境,可使用 virtualenv --help 来查看如何使用。

    1. 使用环境
      新建的Python环境被放到当前目录下的[环境名] 目录。有了[环境名] 这个Python环境:
    激活虚拟化环境: [环境名]Scriptsactivate
    

    激活后在命令行的前面会出现新环境名称,表示当前环境是一个名为[环境名] 的Python环境,接下来可使用pip命令安装新环境需要的各种包。(pip命令在创建新环境时自带)

    1. 退出虚拟环境
    deactivate
    

    此时就回到了正常的环境,现在pip或python均是在系统Python环境下执行。

    完全可以针对每个应用创建独立的Python运行环境,这样就可以对每个应用的Python环境进行隔离。

    virtualenv是如何创建“独立”的Python运行环境的呢?原理很简单,就是把系统Python复制一份到virtualenv的环境,用命令[环境名]Scriptsactivate进入一个virtualenv环境时,virtualenv会修改相关环境变量,让命令python和pip均指向当前的virtualenv环境。

    如果要删除虚拟环境,只需退出虚拟环境后,删除对应的虚拟环境目录即可。不影响其他环境。

    virtualenvwrapper

    virtualenvwrapper是基于virtualenv之上的工具扩展管理包,它将所有的虚拟环境统一起来,用于更方便管理虚拟环境,它可以做:

    将所有虚拟环境整合在一个目录下
    管理(新增,删除,复制)虚拟环境
    切换虚拟环境
    

    安装

    pip install virtualenvwrapper-win
    

    默认创建的虚拟环境位于C:Usersusernameenvs,可以通过环境变量WORKON_HOME来定制。

    通过计算机-->属性-->高级系统设置-->环境变量-->在系统变量中新建“变量名”:WORKON_HOME,变量值:“你自定义的路径”。
    

    使用方法
    所有的命令可使用:virtualenvwrapper --help 进行查看;

    创建基本环境:

    mkvirtualenv [环境名] 
    

    创建成功之后就会在刚才的WORKON_HOME所设置的目录下创建指定的虚拟环境并且自动进入,退出的话也是使用deactivate。再次进入的话,就不用向virtualenv那样去寻找路径,直接可以使用命令就可以进入虚拟环境:

    workon  [环境名] 
    

    常用的命令还有:

    删除环境:rmvirtualenv  [环境名] 
    
    列出所有环境:workon 或者 lsvirtualenv -b
    

    Windows下的python虚拟环境设置

  • 相关阅读:
    Java中synchronized的使用实例
    Javaweb异常提示信息统一处理
    Java异常封装
    Java经典设计模式之十一种行为型模式
    Java经典设计模式之七大结构型模式
    java多线程快速入门(十二)
    java多线程快速入门(十一)
    java多线程快速入门(十)
    java多线程快速入门(九)
    java多线程快速入门(八)
  • 原文地址:https://www.cnblogs.com/zhufanyu/p/12520575.html
Copyright © 2020-2023  润新知