python最常用的库,python中有哪些库
标题:漫威宇宙英雄
python的简单不仅仅在于语法简单,还在于对各种python库函数的支持,为大家节省了大量的时间和精力。所以网上有人戏称Python的程序员为调包侠。但是你知道全球最受欢迎的python库嘛?今天小编就从PYPI网站的过去365天的python库下载量上,看看全球最热的22个python库。
01.Urllib3
过去365天的Urllib3,下载量达到了9.55亿次。Urllib3是一个用于http客户端的强大python库。与python标准库中的Urllib3库相比,Urllib3提供了更全面的特性,包括线程安全、客户端SSL/TLS认证等。而且Urllib3被其他库广泛依赖,有近1200个库依赖于Urllib3库。Urllib3的使用也很简单,如下图所示:
在图中,我们创建请求对象,然后请求www.baidu.com网站的信息,输出状态代码和返回的数据信息。
02.six库
六库为python2和python3的兼容库。使用six库可以使编写的代码在python2或python3中不加修改地运行,如下图所示:
正如我们所见,six库统一了Python2和Python3的名称。比如在Python2中,字符串的类型是unicode,而在python3中,字符串的类型是str,Python3调用它,就可以使用six.string_types的类型。六个。如果在Python2上运行,string_types是unicode,如果在Python3上运行,则是str。但由于python2已经停止维护,未来6个函数库的受欢迎程度也会下降。
03.botocore、s3transfer库
这里botocore和s3transfer都和亚马逊网页服务(AWS)支持相关有关。Botocore是boto3库的基础库,而boto3允许用户在编写软件时使用亚马逊的服务,比如亚马逊的S3服务。S3transfer是用于管理亚马逊S3传输的python库。因此,它也依赖于boto3库。
在上面显示的程序中,我们首先创建一个s3服务,然后查看所有的Bucket内容,最后我们使用s3服务上传一个图像文件。
04.requests
我相信每个人都熟悉请求函数库,requests库使得我们对于网页的请求变得很简单。。由于requests使用起来更加简单方便,在实际应用中,人们倾向于使用requests库而不是urllib3。
上图中,我们使用requests库请求百度首页,输出状态码和网页源代码。
05.python-dateutil
Python-dateutil模块是Python内置库datetime的扩展和增强。下图显示了示例函数:
在上面的程序中,我们通过操作dateutil库中的relativedelta实现了输出去年的today的功能,并通过parse模块将字符串转换成datetime类型的date。
06.pip库
对于python库的安装,你们大部分人肯定都用过pip来安装。pip是Python推荐的包管理工具。使用pip安装时,可以在线安装特定的包,也可以先下载特定包的whl文件,然后通过pipinstallxxx.whl离线安装特定包,卸载时可以通过pip卸载的特定包卸载。如下图所示:
07.certifi库
当浏览器浏览web时,需要在浏览器和web服务器之间建立加密连接,SSL就是用于此目的。SSL连接可以保护每次交互过程中敏感数据的交换,比如我们通过某宝进行网络交易时密码等信息的传输。
在验证过程中,需要在客户端安装根证书。那么证书库的作用是什么呢?当我们抓取网页时,有时会遇到SSL:certificate _ certificate _ failed错误,这是SSL验证错误。如果我们遇到这样的错误,可以使用证书库来解决,如下图所示。
在上图中,Mozilla的证书用于通过证书包认证证书。从而解决SSL验证错误的问题。
08.idna库
Idna库在我们的日常编程中很难遇到,因为我们很难遇到它解决的问题。Idna是应用程序中的国际化域名协议,用于处理包含非ASCII字符的域名。由于浏览器和邮件不支持ASCII码以外的字符,对于很多国家来说非常不方便,比如中国、德国、法国等非英语国家,所以idna的主要功能就是将国际unicode域名和ASCII字符串相互转换。如下图所示:
在上图中,我们分别实现了国际unicode域名到ASCII字符串的转换和反向转换。
09.pyyaml
Pyyaml库是一个处理yaml文件的库,经常用来读写和存储程序中的一些配置信息。Yaml是一个类似json文件的配置文件。下图显示了如何使用pyyaml库读写yaml文件。
10.chardet库
字符串的编码一直是个难题,虽然python提供了str和bytes的数据类型,并且可以通过encode()和decode()方法来转换字符串的编码方式,但是对于不知道编码类型的情况下,很难准确的进行解码操作。
所以chardet库就派上了用场。Chardet用于判断输出字符串的编码类型,输出字符串的编码类型和语言类型的置信度。如下图所示:
上图我们可以发现,使用chardet可以很方便的进行检测编码。获取代码后,再转换成str类型,方便后续处理。
以上是PYPI下载量前十的python库介绍。通过上面的介绍可以发现,在平时的编程中,我们很少会单独导入上述模块进行编程,甚至上面的一些库我们都没有听说过,但是像NumPy(排名23)和Pandas(排名38)这些大家比较喜欢的库,排名都很靠后。这是为什么呢?
这里其实很好解释,因为上述的前十下载量的python库,都有很多的python库需要它们的支持,虽然模块很小,但却是很多python库不可缺少的依赖库,在安装的时候都需要被下载安装,所以他们的下载量会很大。我想大家在日常的库安装中都会有一些体会。
通过边肖的介绍,你可以看到python的一些函数库虽然不太为人所知,但却默默发挥着巨大的作用,成为python编程不可或缺的一部分。真可谓:别看模块小,用处真不少!
近期热门:
还是做重复性的工作,不如用Python自动生成Excel,通过邮件发送。
独家秘籍,50行代码教你买哪只黄金股。
几步,100行代码用Python画出一个蝙蝠侠标志
N Python老司机,血泪总结新手10大常见错误
学Python真香!我做了一个100行代码的网站,帮人PS旅游图片,赚个鸡腿吃!
点击阅读原文,原创400篇干货文章
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。