python在哪里运行_理解Python虚拟环境

Python环境

既然有所谓的 虚拟环境(Virtual Environment),那么首先有必要解释一下,什么是环境。
这里的环境,指的就是 Python 代码的运行环境。它应该包含以下信息:
1、 Python 解释器,用哪个解释器来执行代码?(因为你可能装了很多python版本,2.7 3.4 3.6 3.8 etc 每个版本都可以理解为是解释器)。
2、Python 库的位置,该去哪里 import 所需要的模块呢?
3、可执行程序的位置,比如说安装了 pip,那么 pip 命令是在哪里呢?


其中第 1 个是最主要的,后面 2 个基本是围绕它确定的。
对应答案是:
1、python.exe,就是解释器。
2、Lib 文件夹,包括其中的 site-packages,后续安装的第三方模块和包都会出现在这里,所以偶尔出现问题,我们会造访这里。import XXX时都会来site-packages里面找。
3、Scripts 文件夹,后续安装的第三方包如果提供了命令,可执行文件就会出现在这里。例如pip.exe就是在此目录下,而 Lib 目录下保存的是 pip 的源码。当你使用pip时,会来这里找。

这里插几句关于Windows下的环境变量问题。

我们知道,可执行程序必须要在环境变量path里加以注册登记,否则当在cmd里运行该命令(可执行程序),会显示“不是内部或外部命令,也不是可运行的程序或批处理文件”。而且,其查找优先级为先找系统变量,再找用户变量。并且,对于同一个命令,只找到第一次找到的那个版本即结束。也就是说,比如,如果你在path里先后加了多个python版本,那么,系统会把path变量中写在最前面的第一个python版本作为默认的python版本。

也就是说,如果在这样的Windows环境里,如果你要切换python版本,将不得不不断来回地修改path变量的内容。显然,这样十分繁琐。所以,一些虚拟环境工具就应运而生。

7dd96e35f45fa11d122c14866d0ea7a0.png

当构造虚拟环境时,会在虚拟环境中构造出比较完整的一套工具,包括Lib,Scripts。由于标准库几乎不会变动,各个不同python版本共享标准库,所以不用另行构造。而不同版本的python中的python.exe是不同的,所以需要单独构造。同理,不同版本下的第三方模块和包也很可能是不同的(因为他们往往和python.exe强烈相关),所以他们都会单独构造一份。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值