当第三方库可以帮我们完成需求时,就不要重复造轮子了
整理了GitHub上7个最受好评的Python库,将在你的开发之旅中提供帮助
PySnooper
很多时候时间都花在了Debug上,大多数人呢会在出错位置的附近使用print,打印某些变量的值
这个库可以做同样的事情,无需确定精确的行数,只需在相关的地方调用指定接口
可以得到逐个运行日志,包括pipeline何时运行,以及何时更改局部变量等
拥有超过15.7k star,项目链接:https://github.com/cool-RR/PySnooper
Rich
这是一个用于向终端写入富文本(带有颜色和样式)以及用于显示高级内容(例如表格、markdown 和语法高亮代码)的库
使得命令行应用程序在视觉上更吸引人,并以更易读的方式呈现数据
通过漂亮的打印和语法高亮显示数据结构,也可以成为有用的调试辅助工具
拥有42.4k star,项目链接:https://github.com/Textualize/rich
Tqdm
这也是我常用的库,加载数据时以进度条的形式实时反馈
这个库为Python提供一个快速、可扩展的进度条
除了开销低,还使用智能算法来预测剩余时间并跳过不必要的迭代显示
拥有24.2k star,项目链接:https://github.com/tqdm/tqdm
Moviepy
如果你常和视频打交道,那么这个库是个不错的选择
可用于视频编辑的库,如剪切、连接、标题插入、视频合成、视频处理和创建自定义效果
可以读写所有最常见的音频和视频格式,包括GIF,并在Windows/Mac/Linux上运行,使用Python3.6+
拥有10.2k star,项目链接:https://github.com/Zulko/moviepy
Pytest
测试是项目开发中最重要的环节之一
该库可以支持应用程序和库的简单与复杂功能测试
如失败断言语句的详细信息(无需记住self.assert*
名称)、测试模块和函数的自动发现、可以运行单元测试、开箱即用的测试套件等
拥有9.9k star,项目地址:https://github.com/pytest-dev/pytest
loguru
日志记录是最常用的调试方法之一,这个库我自己也在用
该库旨在通过添加一系列有用的功能来解决标准log的警告,从而减少 Python 日志记录的繁琐步骤
拥有14.3k star,项目地址:https://github.com/Delgan/loguru
Mypy
众所周知,Python 是动态语言,因此通常只有在运行代码时才会在代码中看到错误
这个库是一个静态检查器,所以甚至不用运行程序就可以发现程序中的错误
还添加了类型检查器,以帮助在代码中正确使用变量和函数
还包括许多其他特性,例如类型推断、泛型、可调用类型、元组类型、联合类型、结构子类型等等
拥有15k star,项目地址:https://github.com/python/mypy