Python模块安装

Python模块安装,python,Python,我是python的新手。我已经安装了python 3.7,并创建了一些基本应用程序。为了实现很多事情,我需要安装该模块例如,为了调用RESTAPI,我安装了请求模块。我的问题是,python为什么不附带所有已经安装的东西?python的方法给我们带来了什么好处?另外,如果我在少数几台电脑上部署我的python应用程序,我们是否需要在这些电脑的所有电脑上再次安装这些模块?这些模块没有默认的python发行版,因为它们很容易用不太有用的模块填满硬盘,正如已经在评论中指出的那样(在撰写本文时,只有Py

我是python的新手。我已经安装了python 3.7,并创建了一些基本应用程序。为了实现很多事情,我需要安装模块例如,为了调用RESTAPI,我安装了请求模块。我的问题是,python为什么不附带所有已经安装的东西?python的方法给我们带来了什么好处?另外,如果我在少数几台电脑上部署我的python应用程序,我们是否需要在这些电脑的所有电脑上再次安装这些模块?这些模块没有默认的python发行版,因为它们很容易用不太有用的模块填满硬盘,正如已经在评论中指出的那样(在撰写本文时,只有PyPI才是如此,想象一下服务器驱动器能够以多快的速度填满它)

但是,如果您不想每次都下载依赖项,您有两个解决方案:

选项1:创建自己的PyPI模块(更难) 如何创建、打包和分发您自己的项目的过程已经很好了。
setup.py
文件中调用安装构造函数(从setuptools import setup中导入
setuptools
后,查找\u程序包

在该构造函数中,还可以设置名为的属性。此属性允许您为自己的包定义从属包。让我们以您需要请求和Beauty Soup 4为例,将
install\u requires
变量设置如下:

install_requires=['requires','beautifulsoup4']

通过这种方式,如果需要,您还可以添加更多包

选项2:使用git子模块(更简单) 此选项要求您在本地下载包,并将它们与框架一起保存在单独的存储库中(假设我们为此创建了一个名为rock的repo):

使用此命令,您可以创建一个名为rock的新空文件夹,并将其注册为此子模块的容器。要在此之后获取repo中的文件,需要对子模块运行update命令:

git submodule update --init --recursive
然后你就有了重新工作所需的所有文件

作为旁注:如果您还没有使用版本控制系统,我强烈建议您已经需要安装git命令行客户端,以便正确使用子模块

为什么它会附带所有已安装的组件?如果所有设备都已安装,它将如何运行?每件事都有很多东西。你想让Python比你的硬盘更大,并且附带任何人创建过的不安全、毫无意义的垃圾吗?是的,如果你谈论微软的Visual Studio,它是我们已经存在的大多数程序集。我可能是因为它是一家商业公司所有的。不,它不是。如果安装Visual Studio C#环境,它将附带C#标准库。它没有附带任何我能看到的第三方库,当然也没有试图捆绑任何第三方库。您是否知道,
请求
不是由核心Python开发团队开发的东西?让我困惑的是,对于MS VS,它附带的大部分内容足以完成大部分工作。但是对于python,为了调用RESTAPI,我必须安装请求。那么,有没有类似于python基本安装附带的请求模块的东西呢?。这有点笨拙,这就是为什么Kenneth Reitz费心编写请求包而不是使用标准库的原因。
git submodule add https://github.com/example/rock rock
git submodule update --init --recursive