• 02.虚拟环境


    虚拟环境

    为什么需要虚拟环境:

    到目前位置,我们所有的第三方包安装都是直接通过pip install xx的方式进行安装的,这样安装会将那个包安装到你的系统级的Python环境中。但是这样有一个问题,就是如果你现在用Django 1.18.x写了个网站,然后你的领导跟你说,之前有一个旧项目是用Django 2.1.x开发的,让你来维护,但是Django 1.18.x不再兼容Django 2.1.x的一些语法了。这时候就会碰到一个问题,我如何在我的电脑中同时拥有Django 1.18.xDjango 2.1.x两套环境呢?这时候我们就可以通过虚拟环境来解决这个问题。

    虚拟环境原理介绍:

    虚拟环境相当于一个抽屉,在这个抽屉中安装的任何软件包都不会影响到其他抽屉。并且在项目中,我可以指定这个项目的虚拟环境来配合我的项目。比如我们现在有一个项目是基于Django 1.18.x版本,又有一个项目是基于Django 2.1.x的版本,那么这时候就可以创建两个虚拟环境,在这两个虚拟环境中分别安装Django 1.18.xDjango 2.1.x来适配我们的项目。

    安装virtualenv

    virtualenv是用来创建虚拟环境的软件工具,我们可以通过pip或者pip3来安装:

        pip install virtualenv
        pip3 install virtualenv  # 一般在linux下用这个命令
        pip install virtualenvwrapper-win
    

    创建虚拟环境:

    创建虚拟环境非常简单,通过以下命令就可以创建了:

       # mkvirtualenv [虚拟环境的名字]
       mkvirtualenv py_dj2
    

    如果你当前的Python3/Scripts的查找路径在Python2/Scripts的前面,那么将会使用python3作为这个虚拟环境的解释器。如果python2/Scriptspython3/Scripts前面,那么将会使用Python2来作为这个虚拟环境的解释器。

    进入环境:

    虚拟环境创建好了以后,那么可以进入到这个虚拟环境中,然后安装一些第三方包,进入虚拟环境在不同的操作系统中有不同的方式,一般分为两种,第一种是Windows,第二种是Linux

    1. windows进入虚拟环境:进入到虚拟环境的Scripts文件夹中,然后执行workon py_dj2。
    2. Linux进入虚拟环境:source /path/to/virtualenv/bin/activate
      一旦你进入到了这个虚拟环境中,你安装包,卸载包都是在这个虚拟环境中,不会影响到外面的环境。

    退出虚拟环境:

    退出虚拟环境很简单,通过一个命令就可以完成:deactivate

    virtualenvwrapper:

    virtualenvwrapper这个软件包可以让我们管理虚拟环境变得更加简单。不用再跑到某个目录下通过virtualenv来创建虚拟环境,并且激活的时候也要跑到具体的目录下去激活。

    安装virtualenvwrapper

    1. Linux:pip install virtualenvwrapper
    2. windows:pip install virtualenvwrapper-win

    virtualenvwrapper基本使用:

    1. 创建虚拟环境:

       mkvirtualenv my_env
      

      那么会在你当前用户下创建一个Env的文件夹,然后将这个虚拟环境安装到这个目录下。
      如果你电脑中安装了python2python3,并且两个版本中都安装了virtualenvwrapper,那么将会使用环境变量中第一个出现的Python版本来作为这个虚拟环境的Python解释器。

    2. 切换到某个虚拟环境:

       workon my_env
      
    3. 退出当前虚拟环境:

       deactivate
      
    4. 删除某个虚拟环境:

       rmvirtualenv my_env
      
    5. 列出所有虚拟环境:

       lsvirtualenv
      
    6. 创建虚拟环境的时候指定Python版本:

    在使用mkvirtualenv的时候,可以指定--python的参数来指定具体的python路径:

        mkvirtualenv --python==C:Python36python.exe hy_env
    
    1. 环境一致性
    要保证开发与生产环境的一致性
    # 1. 在开发机的虚拟环境中运行以下命令:
    pip freeze > requirements.txt         (>:定向输出符)
    
    # 2. 在新的虚拟环境中运行命令:
    pip install -r requirements.txt路径
    
  • 相关阅读:
    LeetCode-216 Combination Sum III
    LeetCode-214 Shortest Palindrome
    LeetCode-212 Word Search II
    LeetCode-211 Add and Search Word
    LeetCode-210 Course Schedule II
    LeetCode-209 Minimum Size Subarray Sum
    LeetCode-208 Implement Trie (Prefix Tree)
    LeetCode-207 Course Schedule
    JavaEE--Mybatis学习笔记(四)--单表的CURD 补充
    JavaEE--Mybatis学习笔记(三)--单表的CURD
  • 原文地址:https://www.cnblogs.com/fiee/p/13776234.html
Copyright © 2020-2023  润新知