0%

虚拟环境搭建

Python 虚拟环境搭建

前言:

什么是虚拟环境?

  • 百度百科>)得知: 以专利的实时动态程序行为修饰与模拟算法,直接利用本机的 OS,模拟出自带与本机相容 OS 的虚拟机(Vista 下可模拟 Vista、XP,Windows 7 下则可模拟 Windows 7、Vista、XP),也称为“虚拟环境”
  • 功能: 每一个环境都相当于一个新的 Python 环境。你可以在这个新的环境里安装库,运行代码等

为什么需要使用虚拟环境?

  • 众所周知 Python 的强大在于其兼容性,其强大的社区等。同时缺也由些许库并不兼容
  • 真实环境与虚拟环境二者相对关联,并非绝对关联,可以在环境里面随便造。

什么时候需要使用虚拟环境?

例如:
  • 需要探究不同版本的 Django 等相互之间的异同
  • 各模块产生冲突时
    • 不知为何,我在 python 环境中后续安装 scrapy,由于库的不兼容会报出安装其中的异步框架(Twisted)的错误
虚拟环境原理:
1
各虚拟环境相当于一个抽屉,在这个抽屉中安装的任何包都不会影响其他抽屉,可以指定项目的虚拟环境来配合使用我们的项目

一、搭建 Python virtualenv

搭建前准备:

  • 请确保 Python 已安装至使用的电脑中(最好已经配置好了环境变量)
  • 请确保 pip 命令能够正常使用,且能正常安装库

如何搭建?

使用 Virtualenv 库

  • 安装 Virtualenv:
    • pip install Virtualenv
      
      1
      2
      3
      4
      - 造起来吧

      - 创建虚拟环境:
      -
      # 后面参数为Virtual environment name 虚拟环境名(可自行定义,我这里以Test为例) Virtualenv Test(Virtual environment name)
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37

      ![](DataBoke虚拟环境搭建微信图片_20200422033005.png)          ![](https://cdn.cuiqingcai.com/wp-content/uploads/2020/04/微信图片_20200422033005.png)

      - 命令行解析:首先创建了一个名为 Virtual environment 的文件夹并且进入(至于为何创建,是因为便于多虚拟环境包管理,这个也是一个 **virtualenv** 的一个缺陷。自己思考后想到较为妥善的解决方法,稍后会阐述明白)
      - 1、 使用 Virtualenv Test 命令创建了一个名为 Test 的虚拟环境包
      - 2、 进入 Test 虚拟文件夹中的 Scripts
      - 3、此时已经进入且使用虚拟环境,后又运行了 deactivate.bat 命令退出了虚拟环境
      - 4、 此时为系统环境(或者说没有使用任何虚拟环境)区分是否为虚拟环境以路径开头是否有“(Virtual environment name)”
      - 删除虚拟环境包
      - 直接删除所对应的文件夹即可
      - 注意点:
      - 需进入 Scripts 目录才可运行
      - 需添加名为. bat 后缀才可运行
      - 阐述一下 Virtualenv 缺陷(不是这个库,而是这个方法!!!),
      - Virtualenv 这个方法是直接在当前目录下创建一个虚拟环境,如果没有单独建立类似于名为 Virtual environment 的文件夹难于管理虚拟环境包,一个两个还好,如果多了的话是十分头疼的。个人建议,如果使用此方法,
      - Virtualenv 这个方法需要进入虚拟环境包中的 Scripts 文件夹才可运行相关的命令,如进入及退出虚拟环境的命令。(当然也可用创建环境变量的方法来解决此缺陷,但如果是单文件还好,那如果是多个虚拟环境包,反倒给自己填麻烦)

      ## 二、 搭建 Python virtualenvwrapper-win

      ### 引言:

      ​ 经过上述的缺陷分析似乎并没有那么方便,就算创建了相关文件夹来放虚拟环境包,但似乎管理起来,却并没有那么简单。(一两个的还好,但是到了三四个,上十个,百个绝对是一件伤脑筋的事情),那么是否有方法能有弥补相关的缺陷呢?答案肯定是有的。Ta 就是 **virtualenvwrapper-win**

      ---

      ## virtualenvwrapper-win:

      - 介绍: Virtaulenvwrapper 是基于 virtualenv 的扩展包
      - 功能: 更方便管理虚拟环境
      - 实现: 它可以将所有虚拟环境整合在一个目录下 ,统一管理(新增,删除,修改,复制,检查),也能够快速在各个虚拟环境间自由切换。

      ###### 提前准备:

      - 请确保 Python 已安装至使用的电脑中(最好已经配置好了环境变量)
      - 请确保 pip 命令能够正常使用,且能正常安装库

      ###### 安装:
      pip install virtualenvwrapper-win

使用:

  • 为了便于使用个人建议,配置系统环境变量,配置如下:​ 找到我的电脑(此电脑),右击属性,点击高级系统设置,后点击环境变量在系统环境变量中添加以下信息,后确认退出 ​

    virtualenvwrapper-win 常用命令如下:

    • 创建虚拟环境: mkvirtualenv (Virtual environment name)
    • 进入虚拟环境:workon (Virtual environment name)
    • 退出当前虚拟环境: deactivate
    • 删除虚拟环境:rmvirtualenv (Virtual environment name)
    • 列出所有虚拟环境列表:workon

      演示如下(此时的 Virtual environment name = Test)箭头代表输入的步骤:
    1. 使用 mkvirtualenv Test 命令创建一个名为 Test 的虚拟环境包(并且创建完成后自动进入此虚拟环境)
    2. 使用 deactivate 命令退出当前虚拟环境
    3. 使用 workon 命令列出虚拟环境表
    4. 使用 workon Test 命令 进入名为 Test 的虚拟环境列表
    5. 使用 rmvirtualenv Test 命令删除了名为 Test 的虚拟环境列表
    6. 再次使用使用 workon Test 命令 进入名为 Test 的虚拟环境列表


      Mac \Linux 同理,就不再这里一一赘述了

三、虚拟环境的使用:

  1. 命令行下,运行虚拟环境 直接 Python (Reptile Engineering.py) 即可

    • 不使用虚拟环境:
    • 使用虚拟环境(因为是一个新的环境,所有的包、库都未安装所以报错<没有 requests 模块错误>:
    • 不使用虚拟不使用虚拟环境:直接运行即可。
  2. Pycharm:使用虚拟环境:以下步骤将虚拟环境 Python 解释器加载到 Pycharm 中来,步骤如下:

写在最后:

首先和大家说句 Sorry 啊,此篇文章中有许多内容来自于百度搜索所得,后根据自己理解改进及编写此篇文章。感谢查看与支持,不喜勿喷。谢谢。 如果有疑问欢迎在评论区留言,我看到后会在第一时间回复,咱们评论区见,加油,欧里给~ 祝学习进步,升官发财,感谢查看与支持,谢谢。 我叫 Payen,某大学在校大二学生,我有 Get 到你么?

声明:

​ 本人 Payen 为本文原著,转载请注明出处,谢谢 ​ ——Payne