当前位置:首页 > 生活

pip是什么意思

2023-09-25 13:30:09人气:20

皮普是什么?pip是python中的标准库管理器。它允许您安装和管理不属于python标准库的其他软件包。本教程是给python初学者介绍pip。

通过本教程,您将了解到:

1.安装python标准发行版中未包含的其他软件包

2.找到python包索引(pypi)中发布的包

3.管理脚本和应用程序的安装要求

4.卸载包及其相关依赖项

如您所见,python社区非常活跃,并为pip创建了一些简单的替代方案,您可以在本教程的后面部分看到。

pip 入门

那么,皮普是什么?pip是python的包管理器。这意味着它是一个允许您安装和管理不属于标准库的其他库和依赖项的工具。

包管理是极其重要的,所以从python 3 3.4版和python 2 2 . 7 . 9版开始,pip就直接包含在python安装包中,在其他python项目中也有使用,这使得pip成为每一个python ista必不可少的工具。

如果你已经知道其他语言,你可能对包管理器的概念很熟悉。javascript用npm管理软件包,ruby用gem,还有。net使用nuget。在python中,pip被用作标准的包管理器。

python的安装程序自带pip,除非你安装了更早版本的python,否则可以直接使用。您可以通过在控制台中运行以下命令来验证pip是否可用:

您应该会看到类似的输出,显示pip版本、安装位置和python版本。如果使用的是没有pip的旧版python,可以按照pip安装文档中相应系统的说明进行安装。

您可能希望在虚拟环境中使用本教程的示例,以避免将包安装到python的全局安装环境中。可以从python虚拟环境:入门级了解虚拟环境。本文的“使用虚拟环境”一节介绍了创建虚拟环境的基本知识。

使用 pip 安装软件包

python被认为是“内置电池”语言。这意味着python标准库包含大量的软件包和模块,帮助开发人员开发脚本和应用程序。

同时python有一个活跃的社区,为你的开发提供了一套更大的软件包。这些包发布在python包索引中,也称为pypi(发音为pie pea eye)。pypi托管了大量的包,包括开发框架、工具和库。

这些软件包中的许多通过为现有功能提供友好的界面来简化python开发。例如,您可以编写一个脚本,仅使用python标准库中的函数来分析网页的内容:

脚本中导入了cgi和http.client,两者都在python的标准库中。您创建一个httpsconnection对象并指定服务器,然后调用。request()和。getresponse()解析响应信息。

从响应信息中,我们解析内容类型头信息,并使用cgi模块提取页面编码的字符集。

cgi.parse_header()返回一个以主值和字典为参数的元组。例如,内容类型标题信息可能包含类似文本/html的消息;charset=iso-8859-1的值。

元组以字符串text/html为第一个元素,第二个元素是{"charset" :" iso-8859-1"}形式的字典。因为只需要关心charset参数,所以可以忽略带下划线的元组开头:_,params=cgi . parse _ header(content _ type)。

注意:python中下划线的含义解释了如何从元组中解包值。

对页面进行编码后,就可以读取相应的信息,并解码成文本。您可以在控制台中运行此示例,了解其工作原理:

这似乎为一个用于解析网页内容的小页脚做了一些工作。幸运的是,有一个python包简化了http请求,并提供了一个友好的界面来满足您的期望。

基础包安装

pypi托管了一个非常流行的库,请求,来完成http请求。你可以通过它的官方文档网站找到所有相关信息。

第一步是在您的环境中安装请求包。您可以运行pip帮助来学习pip支持的命令:

如您所见,pip提供了安装软件包的安装命令。您可以运行它来安装请求包:

您可以看到与上面类似的输出信息。您可以使用pip和install命令,后跟要安装的软件包名称。pip会在pypi中找到这个包,计算它的依赖关系,安装并确保请求正常工作。

你也可以看到目前环境下的pip版本是18.1,但是还有19.0.1可用。它还显示了升级pip的命令,所以让我们试试:

注意这里你用python -m升级了pip。-m开关告诉python将模块作为可执行文件运行。如果你想升级pip,就必须这样做。在安装新版本之前,旧版本将被卸载,当工具运行时,卸载本身会导致错误。

当您将pip作为模块运行时,python会将模块加载到内存中,并允许在模块包运行时将其删除。如果包提供高品质脚本__main__。py,您可以像运行脚本一样运行包。

您已经安装了请求并升级了pip。现在,您可以使用list命令查看您的环境中安装了哪些软件包。

pip是什么意思?src=" https://5 b 0988 e 595225 . cdn . sohucs.com/images/20200401/86 f 95 a 534193499 ab 589 ea 9 a8 a 504 b 8 . jpeg " class=" align center "

如上图,pip已经升级到19.0.1版(目前最新版本),请求安装2.21.0版。

命令pip install查找并安装软件包的最新版本。同时,它在包元数据中搜索依赖项列表,并安装这些依赖项,以确保包满足所有要求。

你可以看到这里安装了很多软件。您可以使用pip中的show命令查看包的元数据信息:

元数据列出了依赖证书、chardet、idna和urllib3,您可以看到这些已经安装。

现在我们已经安装了请求包,我们可以修改上面的例子,看看如何更方便地解析网页的内容:

因为您已经在开发环境中安装了请求包,所以您可以像导入其他标准库一样导入它。

如您所见,requests.get()处理http连接并返回类似于前面示例的响应,但是它要简单得多,也更方便。

因为请求已经为您处理了大多数情况,所以您不需要考虑页面的编码。此外,请求提供了一个更灵活的接口,通过请求来处理特殊情况。响应对象。

使用requirements.txt需求文件

pip install命令只会安装最新的软件包版本,但有时您可能希望根据代码运行情况安装特定的版本。

您还希望在开发和测试期间指定创建依赖关系和版本,以便可以避免生产环境中的意外情况。

需求文件可以准确地指定要安装的软件包和版本。运行pip帮助,您可以看到一个冻结命令,该命令将遵循已安装软件包的打印格式。您可以使用此命令将输出重定向到一个文件,以生成一个需求文件:

冻结命令将所有包和版本信息转储到标准输出,因此您可以将这些输出重定向到一个文件。这样就可以根据这个需求文件在其他系统中进行精确安装。同意此需求的文件名为requirements.txt,但也可以根据个人喜好命名。

如果您想在其他系统中复制您的开发环境,您可以运行pip install命令并用-r开关指定需求文件:

包的版本根据requirements.txt列表进行匹配:

您可以将requirements.txt文件提交给资源控制器,这样您就可以使用它在其他机器上创建一个精确匹配的环境。

微调需求文件

软件包及其相关版本可能会导致硬编码问题,因为软件包会经常更新以发现错误和进行安全修复,并且您可能希望在软件包发布后立即进行更改。

需求文件的格式允许您通过使用逻辑运算符来指定依赖版本,这提供了更大的灵活性来确保包被更新,但是仍然需要定义包的基本版本。

使用您常用的编辑器并进行以下修改:

您可以通过将逻辑运算符更改为=,告诉pip准确安装已发布的指定版本或更高版本。当您使用requirments.txt设置新环境时,pip会找到符合要求的最新版本并安装它。您可以将安装命令与upgrade开关配合使用,以升级需求文件中定义的软件包:

这里没有升级操作,因为你的软件是最新版本,但是如果在包列表中发布了新版本,包就会升级到最新版本。

理想情况下,新版本的包将是向后兼容的,并且没有新引入的bug。不幸的是,新版本引入的更改可能仍然会损坏您的应用程序。需求文件的语法支持额外的版本说明符来微调您的需求。

例如,请求发布了新的3.0版本,但有些更改与您的应用程序不兼容。您可以通过修改需求文件来禁止安装3.0及更高版本:

更改请求的版本运算符可确保不会安装3.0或更高版本。pip文档提供了所有需要的文件格式,所以你可以参考它们来获得更多相关的信息。

生产与开发环境的依赖关系

开发过程中安装的依赖项并不都是应用程序的依赖项。pypi上发布了很多包,都是你在开发过程中想要用到的工具或者库。

例如,您可能想要对您的应用程序进行单元测试,并且您需要一个单元测试框架。一个流行的单元测试框架是pytest。您想在开发环境中安装它,但不想在生产环境中安装它,因为它不是应用程序依赖项。

此时,您将创建第二个需求文件(requirements_dev.txt)来列出配置开发环境所需的工具:

在这里,您需要使用pip安装两个需求文件:requirements.txt和requirements_dev.txt幸运的是,pip允许您在需求文件中指定一些附加参数。您可以更改requirements_dev.txt文件,以支持同时安装生产文件requirements.txt中的需求:

请注意,这里您使用完全相同的-r开关来安装生产文件requirements.txt需求文件格式允许您在需求文件中指定其他参数。

为生产环境冻结需求文件

您已经为生产和开发环境创建了需求文件,并将它们添加到资源控制器中。这些文件可以灵活分配版本,发布依赖项可以修复bug。您还可以测试您的应用程序,并准备发布到生产环境。

因为您已经知道开发环境应用程序的所有测试都已正常通过,所以您可能希望确保生产环境的相关版本与集成管道或构建过程中使用的版本完全相同。

当前版本说明符不能保证在生产环境中部署完全相同的版本,因此您需要冻结描述文件,如前所述。

您创建了一个干净的生产环境,并使用requirements.txt文件安装了生产需求。安装需求文件后,您可以冻结当前的特定版本,并将输出转储到生产环境的requirements_lock.txt文件。requirements_lock.txt文件包含准确的版本说明符,可以复制当前环境。

搜索可用包

等你有了更多的python经验,你就会有一个熟悉的软件包,可以在大多数应用中使用。包requesta和pytest是补充您的python工具箱的好选择。

有时候你需要解决不同的问题,想找一个能帮你解决问题的工具或者库。如上所述,命令画中画帮助显示了一个命令搜索,它可以搜索在pypi上发布包。

让我们看看这个命令是干什么的:

该命令给出一组选项和一个参数。查询是用于搜索的字符串,它可以匹配包的名称和描述。

注意:您可以使用pip帮助来检索有关其他支持的命令的信息。

假设您的应用程序需要访问由oauth2授权的服务。理想情况下,会有一个使用请求执行或其他类似接口实现的库。用pip搜索pypi:

搜索命令选项会生成相当大的包集合。其中一些似乎指定了像django-oauth这样的服务或技术。希望能找到类似requests-oauth这样的消息。遗憾的是,除了简短的描述,没有其他信息。

大多数情况下,你想直接在pypi的网站上搜索包。pypi为其索引提供搜索功能,通过元数据(如框架、主题、开发状态等)过滤搜索结果。)在包装中披露。

在pypi中搜索同一个词条可能会产生很多结果,但是可以分类过滤。例如,如果您想找到一个可以帮助您开发应用程序的库,您可以展开“目标受众”并选择“开发人员”。此外,您可能需要一个稳定的可用于生产的包。您可以展开“发展状态”并选择“生产/稳定”。

您可以应用其他过滤器并调整搜索词,直到找到您想要的包。

搜索结果提供了指向包页面的链接,该页面包含更多信息和所需文档。让我们看一下请求的信息-oauth2:

这个项目页面提供了更多信息,似乎有一个指向主页的链接。该链接指向github上的项目库。您可以看到关于项目的更多信息和一些使用示例。

看到最初的源代码仓库,就像找到了无价的财富。在那里,你可以通过查看最新的提交日志、pr(拉式请求)次数和未解决的问题,找到一些项目的状态和提示。

还有一种找包的方法,google。广泛使用的python库将显示在谷歌搜索的顶部,您应该可以在pypi中看到包或源代码仓库的链接。

找到一个合适的包需要一些时间去研究,但是一旦找到了,可以加快你的开发过程。

卸载包

有时候你必须卸载一个软件包。要么你找到了更好的包来代替,要么你真的不需要一些功能。卸载软件包可能很棘手。

请注意,当您安装请求时,pip也会安装其他依赖项。安装的包越多,多个包就越有可能具有相同的依赖性。这里pip的show命令派上了用场。

卸载软件包之前,请确保您已经在此软件包上运行了show命令:

66 e3 b5 b 057 . jpeg " data-original=" https://5 b 0988 e 595225 . cdn . sohucs.com/images/20200401/3a c7ee 191 ea 34 df 293 a9 ef 66 e3 b5 b 057 . jpeg "

注意最后两个属性:requires和required-by。show命令告诉我们请求需要依赖urllib3、证书、chardet和idna。您可能想卸载其中两个。您可以看到其他包没有引用请求,因此可以安全地卸载它。

您应该对请求中的所有依赖项运行show命令,以确保没有其他库依赖于它们。一旦知道了这些依赖项的顺序,就可以使用卸载命令来卸载它们。

卸载软件包会显示要删除的文件并要求确认。如果您确认要卸载此软件包,并且已经检查了它的依赖项,并且知道没有其他软件包正在使用此软件包,则可以使用-y开关隐藏文件列表并确认提示信息:

您可以在一次调用中指定要卸载的所有软件包:

您还可以通过提供-r选项来删除需求文件中列出的所有包。该命令将提示每个包的确认信息。如果您清楚自己的操作,可以使用-y开关禁用这些提示:

当您想要卸载软件包时,请务必检查依赖关系。您可能想要卸载软件包的所有依赖项,但是如果其他软件包使用这些依赖项,程序将会崩溃。

pip 的替代品

pip是所有pythonista必不可少的基础工具,很多应用和项目都把它作为包管理器使用。本教程帮助您理解基础知识,python社区非常积极地为其他开发人员提供优秀的工具和库。其中包括pip替代品,期待简单高效的包管理。

在本节中,您将了解python中可用的其他包管理工具。

万能的 conda

conda是包括python在内的多种语言的包、依赖和环境管理器。其实它起源于anaconda,是以python中研究数据科学的包的形式出现的。

conda广泛应用于数据科学和机器学习应用,并使用自己的索引来托管兼容的软件包。

conda不仅可以管理包的依赖关系,还可以管理应用的虚拟环境,安装兼容的python版本,打包应用进行生产部署。

在windows上设置python进行机器学习很好的介绍了conda,并讨论了包和环境管理。唯一与windows相关的具体信息是安装,所以如果使用其他系统平台,还是可信的。

pipenv

pipenv是另一个包管理工具,旨在为python“提供世界上最好的包”。pipenv因为将虚拟环境和包管理结合到一个工具中,在python社区获得了极大的关注。

还解决了使用pip手动管理依赖时遇到的一些常见问题,如包版本、隔离开发和生产环境依赖、锁定生产环境版本等。

pienv:新的python打包工具指南是学习pienv及其包管理的很好的入门材料。虽然本文的标签是中级的,但是作者给了读者很好的指导,python初学者也能看懂这篇文章。

poetry

诗歌是皮普的另一个替代品,受到了广泛关注。与pipenv类似,它简化了包版本管理,隔离了开发环境和生产环境之间的依赖关系,并隔离了在虚拟环境中运行的依赖关系。

如果你已经了解了javascript和npm,你会发现诗意非常熟悉。它不仅是一个管理包,还可以帮助您为应用程序和库构建发行版,并将它们部署到pypi。如何将开源python包发布到pypi一个很棒的诗歌入门可以帮助你入门。

总结:pip是什么?

本教程回答问题:pip是什么?如您所知,pip是python的包管理器,在许多项目中用于依赖关系管理。现在python安装程序已经包含了pip,使其成为所有pythonista都应该使用的基本工具。

python提供了适合开发各种应用的标准库扩展,但是python的活跃社区提供了更多的工具和库,可以加快python应用的开发。

这些工具和库发布在python package index (pypi)上,pip允许开发人员在自己的环境中安装。

通过本教程,您可以了解:

1.使用pip和需求文件在命令行安装新软件包

2.管理依赖关系,隔离开发和生产环境,并创建锁定的需求文件

3.通过pip和pypi找到包

4.在卸载软件包之前评估软件包依赖性,以及如何卸载软件包。此外,您已经了解了保持依赖关系最新的重要性,pip的许多替代方案可以帮助您管理这些依赖关系。

如果您有任何问题,您可以随时在下面的评论部分留言,您也可以随时在画中画文档页面获得更多信息。

pip是什么意思(python新手入门指南)

扩展阅读

ipad怎么清理垃圾(ipad系统内存怎么清理加速)

删除垃圾文件并清除缓存和内存是加速iphone(或ipad)并使其运行速度超过以往任何时候的好方法。现在开始使用我们的简单教程

随着iphone和ipad逐渐填满不必要的文件和应用程序,它们往往会阻塞和变慢。在本文中,我们将研究如何清除设备上的缓存、垃圾文件和内存阻塞文件,并使它们运行得更快。

ios设备可能不需要和macos一样的维护级别(或者天理难容,windows),但还是需要注意以最好的速度运行,尤其是老款iphone和ipad的性能会受益于春季大扫除。清除也有助于提高人们的水平,因为它让你专注于你使用的东西。

第一步:删除safari的缓存

我们将从清除safari中的缓存开始。请注意,这将导致您退出所有已登录的网站。

打开设置,然后向下滚动到第五组选项(“密码和帐户”在顶部)。点击safari。

再次向下滚动并单击“清除历史记录和网站数据”。

单击“清除历史记录和数据”进行确认。

步骤2:清除应用程序数据

您可以使用“设置”中的“使用”选项来清除由其他应用程序存储的数据。按照这些顺序:

单击设置通用iphone存储。(不出意外,在ipad上,会贴上ipad storage的标签。)

在屏幕底部,您将看到您的应用程序,这些应用程序是根据它们占用的存储量排列的。单击占用大量空间的应用程序。

如果文档和数据映射大于500mb,您应该考虑删除并重新安装应用程序来清除此空间。(以下应用只有3.3mb,我们就不打扰了。请记住,这不是无效数据:它将包括保存游戏、文档、首选项、下载基准应用程序的数据等。

如果您决定继续,请单击“删除应用”,确认,然后转到应用商店(或“已购买”列表)并再次下载。这个新安装不包括数据和文档。

第三步:重启iphone或ipad释放内存

在大多数情况下,ios可以在没有任何用户参与的情况下很好地管理内存。但我们确实发现,不时重启iphone是一个很好的清理内存的方法,可以保证重要的应用程序能够足够愉快地运行。

这是重启iphone的方法:

按住电源按钮(位于设备的顶部或右上角),直到出现“滑动以关闭电源”。如果你的iphone没有home键(xr,11,11 pro等。),需要按住电源的同时增加音量,直到出现滑块。

滑动断电滑块。

等到设备完全关机,然后按住电源按钮,再次打开iphone。

在iphone上定期做这个很重要,但是今天很少做了。尽管如此,它在旧模型上仍然有用。

步骤4:下载一个更干净的应用程序

有许多应用程序可以快速有效地删除不必要的文件。这些通常下载到你的mac或pc上;然后,您可以连接iphone(或ipad),让应用程序执行其操作。

清理应用程序通常是在iphone上腾出空间最有效的方法,但如果你想使用功能齐全的应用程序,通常需要20英镑/20美元左右。比买一部新手机还要多。

电话清洁

imobie的phoneclean可以用来删除ios中的垃圾文件。按照这些顺序:

将iphone插入您的mac。

打开电话清理,然后单击扫描。

扫描完成后,单击清除。

一些手机清洁功能,包括照片缓存,仅在专业版可用。一台苹果电脑或个人电脑的价格是每年19.99美元(约14英镑)。

imyfone umate

就像phoneclean一样,imyfone umate for mac和windows可以用来快速删除ios设备上的临时文件和垃圾文件。

将iphone连接到您的mac或pc。

打开我的imyfone umate,然后单击扫描(在主页选项卡上)。

检查“垃圾文件”和“临时文件”部分,然后清除它们以释放设备上的空间(我们在测试的iphone上管理4gb)。

您还可以清除所有大文件,查看哪些应用程序占用的空间最大,然后删除它们。

如果你想自己试试这个应用,有一个免费的版本。付费版售价19.95美元(14英镑),增加了更多高级功能。

默认网关是什么(ip地址默认网关怎么填)

对于不熟悉路由器的用户来说,他们可能不知道默认网关是什么。它是一种网络连接系统,使两台设备能够相互连接。有些win7用户显示电脑开机后默认网关不可用,然后经常断线。如何解决这个问题?下面的小系列将告诉你如何修复win7默认网关的不可用。

方法如下

1.进入控制面板,选择“网络和互联网”;

2.然后点击“查看网络状态和任务”;

3.然后单击“更改适配器设置”;

4.然后右键单击“本地连接”。然后点击属性;

5.然后点击“互联网协议”,再点击“属性”;

6.然后单击自动获取重新启动计算机。网关会自动获取。

以上是win7默认网关不可用的详细解决方案。希望能帮到你。

激活iphone时sim卡无效(sim卡没坏但苹果手机无服务)

购买新iphone后,需要激活手机才能正常使用。在激活之前,您需要插入sim卡并将手机连接到网络。如果iphone无法激活,请参考以下信息尝试解决问题:

提示“无 sim 卡”或“无效 sim 卡”:

请确保sim卡可以正常使用,并可以安装在其他手机上进行检查;请尝试重新启动您的设备,或者重新安装sim卡。

查看苹果官网“系统状态”页面上的列表:

如果“ios设备激活”旁边的框不是绿色的,请稍后尝试激活您的iphone。

如果遇到“无法激活”的提示:

比如遇到上面的“无法激活”提示,可以先尝试重启iphone。如果您当前正在使用蜂窝数据连接,请改为连接到可靠的无线网络。

如果您仍然无法激活 iphone,请改用电脑尝试激活:

确保您有最新版本的macos或最新版本的itunes,并检查您的计算机是否已连接到互联网。使用iphone附带的电缆将iphone连接到电脑,并在电脑上找到您的设备。等待电脑检测并激活iphone:

如果您在itunes上看到一个提醒,上面写着“设置为新[设备]”或“从备份中恢复”,这意味着您的iphone已被激活。

如果计算机上显示错误信息,表明sim卡不兼容或无效,请联系您的运营商。

如果您收到“激活信息无效”或“无法从设备获取激活信息”的错误消息,您需要将设备置于恢复模式,并通过恢复模式恢复iphone:

1.在iphone 12型号中,快速按下并释放音量增大按钮。按下音量降低按钮并快速释放。按住顶部按钮,直到设备开始重新启动。继续按住顶部按钮,直到设备进入恢复模式。

恢复模式屏幕

2.当您在itunes中看到“恢复”或“更新”选项时,请选择“更新”。您的计算机将尝试在不擦除数据的情况下重新安装软件。请等待计算机下载您设备的软件。如果下载时间超过15分钟,设备退出恢复模式屏幕,请等待下载完成,然后让设备再次进入恢复模式进行恢复。

如果您仍然无法激活您的iphone,请联系苹果官方支持以获得更多帮助。

相关文章
热门文章

孕妇堂 苏ICP备2022030739号-2 苏公网安备 32011502011778号