Python虚拟环境(pipenv、venv、conda)

时间:2024-02-02 15:59:11 类型:python
字号:    

一、什么是虚拟环境

1. 什么是Python环境

要搞清楚什么是虚拟环境,首先要清楚Python的环境指的是什么。当我们在执行python test.py时,思考如下问题:


python哪里来?这个主要归功于配置的系统环境变量PATH,当我们在命令行中运行程序时,系统会根据PATH配置的路径列表依次查寻是否有

可执行文件python(在windows中,省略了后缀.exe),当查寻到该文件时,执行该文件; 如果在所有路径列表中都查找不到,

就会报报错:'python' 不是内部或外部命令,也不是可运行的程序或批处理文件。

test.py代码中import的模块在哪里找?

import的模块包含两类,

一类称为标准库,随着python的安装而安装;

另一类称为第三方库,使用pip工具或者自己手动安装的包。

模块的搜索路径可通过sys.path查看,主要由可执行文件python所在的位置所决定。

Python环境主要包括以下内容:


解释器 python.exe

            Lib目录

            标准库

            site-pakages目录,默认安装第三方库所在的目录

            Scripts目录,包含一些执行文件

包安装管理工具pip.exe

打包工具pyinstaller.exe(需要自己安装)

其他

主要包括python解释器运行时需要的相关依赖文件,文档说明等

Python环境主要由运行python解释器的位置所决定


2. 什么是虚拟环境

理解了什么是python环境,思考下为什么有虚拟环境的说法。思考以下问题:


有两个项目A和B,如果A和B都要用到某一模块,但版本不相同怎么办?

在使用pip安装包时,会发现在安装的时候会安装其它的依赖包,但当我们用pip移除一个包时,却只移除了指定的包

为了解决上面的问题,python使用了虚拟环境这个概念,你可以认为是python环境的多个副本,只是在不同的副本中安装了不同的包。

既然叫虚拟环境,总得有点不一样:

虚拟环境中一般不包含标准库;

不包含python解释器运行时所需的依赖文件;可执行文件全部放于Scripts目录等。


3. 常用工具

知道了什么是虚拟环境,就应该清楚如何去管理虚拟环境,这就离不开虚拟环境管理工具,下面列出了一些常用的工具,并在稍后的内容中

对部分工具的使用作简单的介绍。


Virtualenv

virtualenv 是非常流行的 python 虚拟环境配置工具。它不仅同时支持 python2 和 python3,而且可以为每个虚拟环境指定 python 解释器,

并选择不继承基础版本的包。


venv

考虑到虚拟环境的重要性,Python 从3.3 版本开始,自带了一个虚拟环境模块 venv,关于该模块的详细介绍,可参考 PEP-405 。

它的很多操作都和 virtualenv 类似。如果你使用的是python3.3之前版本或者是python2,则不能使用该功能,

依赖需要利用virtualenv进行虚拟环境管理。


pipenv

pipenv 是Kenneth Reitz(requests的作者)大神的作品。它结合了 Pipfile,pip,和virtualenv,能够有效管理Python多个环境,各种包。

并且windows视为一等公民。


Pipfile是社区拟定的依赖管理文件,用于替代过于简陋的 requirements.txt 文件。

Pipfile 文件是 TOML 格式而不是 requirements.txt 这样的纯文本。


virtualenv能够很好的完成虚拟环境的搭建和python版本的管理,但是跨平台的使用不太一致,且有时候处理包之间的依赖总存在问题


pip能够很好的完成包的管理,但是仍然推荐pipenv,相当于virtualenv和pip的合体,且更加强大。


conda

支持Python、R、Java、JavaScript、C等多种开发语言的包、依赖和环境管理工具,能运行在Windows、MacOS、Linux多个平台,

可以在本地轻松创建、保存、切换环境。当安装anaconda时,会自动安装conda工具。


Python Launcher for Windows

Python 从3.3版本开始,在 Windows 系统中自带了一个 py.exe启动工具。如果你是使用 Python.org 官网下载的安装包安装的 Python 3.3

(或更新版本)环境,那么可以直接在命令提示符中使用这个工具(在windows中,py.exe会安装在C:\Windows目录)。

py 可以打开默认的 python 提示符; py -2.7 和 py -3 打开对应的 Python 版本,py -0将列出系统中安装了哪些版本的python

————————————————


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

                        

原文链接:https://blog.csdn.net/weixin_42118352/article/details/129281671


<