[英]is it necessary to install Requests library at Virtual Environment in python?
我是 python 新手,使用虚拟环境等。我在 C 驱动器中安装了 python,添加了 PATH 变量并从那里开始工作。 出于学习目的,我决定只在我的项目目录中安装包。 因此,我按照文档在我的项目文件夹中创建了虚拟环境。 我已经在我的 Windows 机器上以这种方式创建了它:
python -m venv my-env
之后,我激活了它:
my-env\Scripts\activate.bat
之后,我安装了 Requests 库(如文档中所示):
pip install requests
但是,我的问题是:为什么需要安装 Requests 库? 如果我将来在该新项目目录中创建新项目、新虚拟环境,是否需要再次安装它?
我安装了一些额外的包,我想创建requirements.txt。 所以,我写道:
pip freeze > requirements.txt
现在,除了我为项目本身所需的库之外,来自 Requests 库的每个包也都在那个 requirements.txt 文件中。 因此,如果我与其他用户共享我的项目,则该用户将在通过 requirements.txt 安装时从 Requests 库中获取包。 没关系吗?
抱歉问了很多问题。 基本上,我认为所有问题都是相关的和上下文相关的。
为什么需要安装 Requests 库?
无需安装此库即可让虚拟环境正常工作。
如果我将来在该新项目目录中创建新项目、新虚拟环境,我是否需要再次安装它。
虚拟环境的想法是:您在为该项目创建的受控环境中工作。 如果您将在另一个项目上工作,在它自己的虚拟环境中,您将不得不再次安装它。 这一点也不错:在每个项目中,您可能需要使用同一个库的不同版本,或者您甚至可能想要/需要删除一个项目,并且一个项目中发生的任何事情都不会影响另一个项目,这很好。
除了我为项目本身所需的库之外,请求库中的每个包也都在那个 requirements.txt 文件中。
是的,freeze 命令会列出所有已安装的软件包。 这不仅包括您通过pip install ...
,还包括这些软件包所需的依赖项。 这就是为什么有些人建议手动编写需求文件的原因:这样更清楚直接需要哪些外部资源,而不是每个子依赖项,正如您可能已经看到的那样,理解起来有点笨拙。
如果我与其他用户共享我的项目,则该用户将在通过 requirements.txt 安装时从 Requests 库中获取包。 没关系吗?
从某种意义上说,这些软件包将以任何一种方式安装都是可以的。 它们被明确列出,但如果没有,它们也会被下载和安装。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.