欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

这十个Python常用库,学习Python的你必须要知道!

程序员文章站 2023-09-07 08:43:14
想知道Python取得如此巨大成功的原因吗?只要看看Python提供的大量库就知道了 包括原生库和第三方库。不过,有这么多Python库,有些库得不到应有的关注也就不足为奇了。此外,只在一个领域里的工作的人并不知道另一个领域里有什么好东西,不知道其他领域的东西能产出什么有用的价值。 下面给大家列出1 ......

想知道python取得如此巨大成功的原因吗?只要看看python提供的大量库就知道了

这十个Python常用库,学习Python的你必须要知道!

包括原生库和第三方库。不过,有这么多python库,有些库得不到应有的关注也就不足为奇了。此外,只在一个领域里的工作的人并不知道另一个领域里有什么好东西,不知道其他领域的东西能产出什么有用的价值。

下面给大家列出10个你可能忽略,但绝对值得注意的python库

这十个Python常用库,学习Python的你必须要知道!

,这些工具的用途非常广泛, 简化了从文件系统访问、数据库编程、云服务到构建轻量级web应用程序、创建gui、图像工具、excel和word文件等等的事情的工作复杂度。有些库是众所周知的,有些则不太为人所知,但是所有这些python库都应该在各位的工具箱中占有一席之地。

1. arrow

arrow: 让你更方便地处理日期和时间。

为什么要使用arrow:还记得我们之前讲过的日期计算吗?实际上那是一个简单的计算教程,思考一下,如果我们想要切换时区怎么办、更加灵活地日期格式化怎么做?即便是像python这么好用的工具,如果你只用原生库,你也得折腾上一阵子。现在我们有了更好的选择:arrow.

arrow拥有四大优势。首先,箭头是python的datetime模块的一个替代品,这意味着像.now()和.utcnow()这样的公共函数调用可以正常工作。第二,arrow提供了一些通用的方法,比如转换时区。第三,arrow提供了“人性化”的日期/时间信息,比如能够毫不费力地说出“一小时前”或“两小时后”发生的事情(就如同我们在暑期余额里讲的那样)。第四,arrow可以轻松地本地化日期/时间信息。

下面是arrow使用的三个例子:

这十个Python常用库,学习Python的你必须要知道!

2. behold

behold: 强大的代码调试工具。

如果你只是使用print进行项目的调试,你会发现在大型项目的时候,这一招根本行不通

这十个Python常用库,学习Python的你必须要知道!

因为大型项目的数据流动非常复杂,你必须跟踪一个变量的流动才行,这时候你可能会出现每隔几句就写一个print的尴尬情况。这时候behold就非常有优势了,它具有搜索、筛选、排序功能,而且能跨模块地展示数据流向。

3. black

black:使用严格的规则格式化python代码。 

black是一个毫不妥协的格式化工具,它检测到不符合规范的代码风格直接给你全部格式化了,不需要你自己确定,非常适合代码风格紊乱的人群进行自我纠正

这十个Python常用库,学习Python的你必须要知道!

,使用也非常简单, cmd/terminal安装black:

pip install black
然后同样,cmd/terminal进入到你的python文件的文件夹里,然后输入:
black 你的文件名.py
即可格式化该文件里的代码。

4. bottle

**bottle:轻量级网站/api开发工具

当你想要构建一个快速的restful api或者使用web框架的基本框架来构建一个应用程序时,bottle完全就够用了。路由、模板、请求和响应、支持许多种请求协议,甚至如websockets之类的高级功能都支持。同样,启动所需的工作量也很小,而且当需要更高级的功能时,bottle可以很好地扩展,非常优秀

这十个Python常用库,学习Python的你必须要知道!

5. click

click: 让你快速地为python应用程序构建命令行界面。

在没有用click之前,我们是如何获取用户输入的? 是用 val = input(xxx) 这样的形式吧?虽然也非常简单,但是当你想要给它设定默认值的时候就麻烦了

这十个Python常用库,学习Python的你必须要知道!

然而click可以让你消去这样的烦恼:

这十个Python常用库,学习Python的你必须要知道!

我的天,简直是上天给予python程序员的礼物啊。更多的功能请阅读官方文档,比如它还能设定输入参数:

这十个Python常用库,学习Python的你必须要知道!

 

 运行结果

这十个Python常用库,学习Python的你必须要知道!

6. nuitka

nuitka: 将python编译成c++级的可执行文件。

重点是c++级的应用,速度快!速度快!速度快!尽管cython也能够把python编译成c,但是cython仅仅关注数学和统计应用程序,而nuitka可以按原样使用任何python程序编译为c,生成单文件的可执行文件。虽然目前还在早期阶段,但是可以预想到它的未来是多么的辉煌

这十个Python常用库,学习Python的你必须要知道!

7. numba

numba: 有选择地加速数学计算。

这是我以前梦寐以求的功能,我们知道numpy通过在python接口中封装高速的c库进行工作,cython将某些用户选择的类型编译为c,但是我们发现这些东西用起来都不是很顺手,感觉“命运 ” 不是由我掌控的。有了numba之后,我们可以对函数进行加速

这十个Python常用库,学习Python的你必须要知道!

 

你要做的仅仅是在函数上方加一个装饰器,这可真的是非常舒服:

这十个Python常用库,学习Python的你必须要知道!

8. openpyxl

openpyxl: 读取,写入和操作excel文件。

还记得我们的日历文章吗?我们在那篇文章里就用到了openpyxl这个库,实质上,用于操作excel的不止有这个库可以做到,但是它有一些独特的功能,比如,写成最新的文件格式xlsx,而且它对文件大小是没有限制的,就这两个功能已经完爆xlwt了。当然,它在速度上是比不过xlwt的,这就需要各位权衡使用了,在学习python的过程中,往往因为没有资料或者没人指导从而导致自己不想学下去了,因此我特意准备了个群 592539176 ,群里有大量的pdf书籍、教程都给大家免费使用!不管是学习到哪个阶段的小伙伴都可以获取到自己相对应的资料!

这十个Python常用库,学习Python的你必须要知道!

9. peewee

peewee: 支持sqlite, mysql及postgresql的小型orm(方便写数据库的)。

这是我在python上接触的第一个orm,不是所有人都喜欢用这个玩意儿,但是对于那些不喜欢接触sql语句开发的人来说,这玩意儿简直是宝物啊

这十个Python常用库,学习Python的你必须要知道!

peewee非常易于构建、连接、操作数据库,然后内置了许多的查询操作功能。不过需要注意的是,peewee 3.x 并不完全向旧版本兼容。

10. pyfilesystem

pyfilesystem: 简化了文件、目录的处理方法,支持任何文件系统的操作,大幅度提高编程效率。

你的开发过程中,有没有为这样的事情忧愁过:打开一个不存在文件夹里的文件(新建),确定某个目录里是否存在某个文件,确定是否存在某个目录

这十个Python常用库,学习Python的你必须要知道!

当然如果你非常熟练os和io模块,你会觉得这些事情简直是so easy. 但是对于一些不熟悉这两个模块的语句的同学,这可得google一下。幸好,现在有了pyfilesystem, 我们的编程生活能够快乐许多。它能支持任何文件系统的操作,而且提供了许多实用的函数,比如说查看当前目录下的文件:

这十个Python常用库,学习Python的你必须要知道!

显示目录结构树

这十个Python常用库,学习Python的你必须要知道!

当然还有更多的功能,请阅读官方文档