• Python的Virtualenv与Venv环境管理器


              Python的Virtualenv与Venv环境管理器

                                  作者:尹正杰 

    版权声明:原创作品,谢绝转载!否则将追究法律责任。

    一.Virtualenv环境管理器

    1>.Virtualenv概述

      如果你的操作系统使用的是原生python环境,也想要在本系统创建和运行多个Python独立环境(每个python环境都安装不同的包),可以使用py第三方库。

      Virtualenv的功能较Conda更加简陋和原始,其与Conda不同之处如下所示:
        (1)Virtualenv是一个Python一个包,所以使用Virttualen的前提是你的系统里至少已经有一个Python环境并且安装了Virtualenv包;
        (2)创建的子环境,Python解释器(python.exe)是拷贝系统环境的,所以只能创建系统环境已有的Python版本(不能创建操作系统里没有python版本环境);
        (3)各个Python环境之间,隔离的知识安装的库(可在新建子环境时选择集成系统python环境库,当然,一般情况下我们不选);

      Virtualenv有一个辅助工具,名曰"VirtualenvWrapper",可以简化子环境以下管理操作:
        (1)将所有子环境放在一处集中管理;
        (2)管理命令加入环境变量不许进入目录就能执行;
        (3)安装方法:"pip install VirtualenvWrapper";
        (4)使用方式可自行参考帮助信息;

    2>.安装Virtualenv

    C:Usersyinzhengjie>pip install virtualenv

    3>.创建python子环境

    D:yinzhengjiepython>virtualenv myVirtualenvTest        #创建一个名为"myVirtualenvTest"的子python环境


    温馨提示:
      如果你在Linux下安装了多个python版本,可以选择你需要创建对应python版本来创建子环境,比如"virtualenv -p /usr/bin/python2.7 venv27"

    4>.进入到创建的子环境中

    D:yinzhengjiepython>cd myVirtualenvTestScripts
    
    D:yinzhengjiepythonmyVirtualenvTestScripts>
    D:yinzhengjiepythonmyVirtualenvTestScripts>activate
    
    (myVirtualenvTest) D:yinzhengjiepythonmyVirtualenvTestScripts>
    (myVirtualenvTest) D:yinzhengjiepythonmyVirtualenvTestScripts>python -V
    Python 3.8.3
    
    (myVirtualenvTest) D:yinzhengjiepythonmyVirtualenvTestScripts>

     

    5>.退出python子环境

    (myVirtualenvTest) D:yinzhengjiepythonmyVirtualenvTestScripts>deactivate        #退出子环境
    D:yinzhengjiepythonmyVirtualenvTestScripts>

    6>.新建子环境继承福环境(比如父环境中已安装的软件包信息)

    D:yinzhengjiepython>virtualenv --system-site-packages myVirtualenvTest2          #创建子环境时继承父环境

    7>.查看帮助信息

    D:yinzhengjiepython>virtualenv -h

    二.venv

    1>.venv概述

      venv是python3.3以上的版本官方自带的一个环境管理工具。
        优点:
          官方环境自带。。
        缺点:
          python 3.3以前的版本没有此工具,所以使用相比Virtualenv较少。
    
      venv工具根据Virtualenv发展而来,所以功能和操作非常相似。
    
      python 3.4以上创建的子环境开始包含pip。
    
      python 3.7开始,创建的子环境不带独立python解释器,快捷方式直接调用父环境中的Python.exe(如果python升级则所有环境python解释器全部升级,这反而不好!)
    
      另外一个官方他推荐内置环境管理工具pyenv,py3.6起被弃用。
    
      博主推荐阅读:
        https://www.cnblogs.com/yinzhengjie/p/10624755.html

    2>.创建python子环境

    D:yinzhengjiepython>python -m venv myVenv      #创建一个名为"myVenv"的环境目录

    3>.进入python子环境

    D:yinzhengjiepythonmyVenvScripts>activate          #在子环境目录下的Scripts目录中执行"activate"即可进入该子环境啦~

    4>.退出子环境

    (myVenv) D:yinzhengjiepythonmyVenvScripts>deactivate        #进入到子环境目录中的Scripts目录下,执行"deactivate"命令即可退出当前子环境

    5>.查看帮助信息

    D:yinzhengjiepython>python -m venv -h

    三.博主推荐阅读

      Python软件包管理工具pip实战篇:
        https://www.cnblogs.com/yinzhengjie/p/13696906.html
    
      Python软件包及环境管理器conda实战篇:
        https://www.cnblogs.com/yinzhengjie/p/13659317.html
  • 相关阅读:
    leetcode 337. House Robber III
    leetcode 366 Find Leaves of Binary Tree
    leetcode 250 Count Univalue Subtrees
    leetcode 132 Palindrome Pairs 2
    leetcode 131 Palindrome Pairs
    leetcode 336 Palindrome Pairs
    leetcode 214 Shortest Palindrome
    leetcode 9 Palindrome Number
    Socket编程
    Zookeeper
  • 原文地址:https://www.cnblogs.com/yinzhengjie/p/13620482.html
Copyright © 2020-2023  润新知