python三大神器_Python之旅:Python上古三大神器之一PIP①

d62a6059252dd42a9809a102526ce7b1c8eab8f7.jpeg?token=5bc3af3963181bbee351eec477841cb5&s=2941A846C7C1A11768093F390300D054

●什么是 pip ?

pip是Python中的标准库管理器。它允许你安装和管理不属于Python标准库的其它软件包。本教程就是为 Python 新手介绍 pip。

通过本教程,你将学到:

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

2. 查找发布于Python 包索引(PyPI)的包

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

4. 卸载包及它的相关依赖

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

●pip 入门

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

软件包管理极其重要,所以自 Python3 的 3.4 版本以及 Python2 的 2.7.9 版本开始,pip 一直被直接包括在 Python 的安装包内,同样还被用于 Python 的其它项目中,这使得 pip 成为了每一个 Pythonista(Python用户)必备的工具。

如果你已经了解了其他语言,那么可能会对包管理器的概念比较熟悉。JavaScript使用npm管理软件包,Ruby使用gem,以及.NET使用NuGet。Python 中,则是 pip 作为标准包管理器。

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

你应该可以看到一个类似的输出,显示 pip 的版本以及安装位置还有 Python 的版本。如果你使用的是不包含 pip 的旧版本 Python,你可以根据pip 安装文档中相应系统的说明进行安装。

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

●使用 pip 安装软件包

Python 被认为是一种"内置电池"式的语言。这表示Python 标准库包含大量的软件包和模块,这些模块有助于开发人员开发脚本和应用。

与此同时,Python 拥有一个活跃的社区,它提供了一个更大的软件包集合,以供你开发所需。这些软件包发布在Python Package Index,也被称为PyPI(发音 Pie Pea Eye)。PyPI 托管了大量包,包括开发框架,工具和库。

其中很多软件包通过为已有功能提供了友好地接口来简化 Python 开发。例如,你可以写一个脚本,仅使用 Python 标准库中的功能分析网页的内容:

9a504fc2d5628535307b4697c5b8cac2a6ef634d.jpeg?token=93c566c3492c1c8e5823997f208c49c7&s=ECA4D55F4BE5B04F5C59C10B0000A0C1

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

从响应信息中,我们解析到 Content-Type 头信息并且使用 cgi 模块提取页面编码的字符集。

cgi.parse_header()返回一个包括主要值和字典作为参数的元组。例如,Content-Type 头信息可能包含一个像 text/html; charset=ISO-8859-1 的值。

这个元组将字符串 text/html 作为第一个元素,第二个元素是 {'charset': 'ISO-8859-1'} 这样形式的字典。因为你只需要关心 charset 参数,可以使用下划线忽略元组的开头:_, params = cgi.parse_header(content_type)。

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

对页面编码后,你可以阅读相应信息并解码到文本中。你可以在控制台中运行这个例子查看它是怎么工作的:

对于一个用于解析网页内容的小脚本来说,这看起来做的工作有点多。幸运的是,有一个 Python 的包可以简化 HTTP 请求并提供了一个友好地接口来实现你的期望。

8c1001e93901213fa8ac1ba005b08ad52e2e958e.jpeg?token=bba999845d495060f0e5afbc22b12459&s=6394EC2A87A078AAD2CDCDDB0000C0B2

●基础包安装

PyPI 托管了一个非常流行的库requests来完成 HTTP 请求。你可以通过它的官方文档站点了解所有的相关信息。

第一步是在你的环境中安装 requests 包。你可以运行 pip help 来了解 pip 支持的命令:

79f0f736afc379313df61d03b3930b4142a911dd.jpeg?token=357166f1da2e27ad3c2fc3a361a97978&s=EEA0C54FDAF792CE106D441A0000E0C2

c995d143ad4bd113e478c75a0ff8180b4afb05f8.jpeg?token=e88bcc9a426bc1d53da57cf3ec2ce514&s=F4A0D55B87E085534E51451B0100A0C2

如你所见,pip 提供了 install 命令来安装软件包。你可以运行它来安装 requests 包:

9f2f070828381f30c0136e00f656f00c6f06f0e9.jpeg?token=d207c3dd7d6b072b1ccdeea0da305ea7&s=A680D74F92AC90EE1CDDF40B0100A0D1

你可以看到与上面类似的输出信息。你可以使用 pip 以及 install 命令,其后跟着你想要安装的包名。pip 会在 PyPI 中查找这个包,计算其依赖关系,安装并确保 requests 正常工作。

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

11385343fbf2b211782bd9fc9ed7d93c0dd78ed3.jpeg?token=b0623e7151c4279715a96b20c65b7c6d&s=A480D75F85C03D4310C9910B0100E0D1

注意这里,你使用了 python -m 来升级 pip。-m 开关告诉 Python 将模块作为可执行文件运行。如果你要升级 pip,这么做是很有必要的,在安装新的版本之前会卸载旧的版本,而当工具在运行时卸载它自己会导致错误。

●由于这个知识点内容过多将分为两次发表。

●更新不易,点点关注呗。

部分素材来源于网络,如有版权侵犯,请联系删除。

ac345982b2b7d0a28f27ee8199b8ca0d4a369a98.jpeg?token=5ce4831644202ab4ce91d1bcfe07f1c9&s=6722DD4B4442255F563D0C2A03008052

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值