继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

2020年10个不错的Python库

豆包同学在路上
关注TA
已关注
手记 35
粉丝 0
获赞 17

这是第六届年度 Python 库排行榜。这个排行榜的依据是什么?规则很简单。我们寻找的库需要满足下列条件:

  1. 它们是在 2020 年推出或普及的。
  2. 它们从发布后就一直有良好的维护。
  3. 它们非常炫酷,很值得一看。

免责声明:今年,我们的选择受到机器学习 / 数据科学库的极大影响,虽然有些库对非数据科学家来说确实很有用。另外,尽管我们有 10 个主要的精选(以及一个奖励),但我们还是决定增加一个新的“荣誉提名”部分,以便公平对待我们发现但又不能遗漏的其他库。

1.Typer

你不必总是要编写 CLI 应用程序,但是在编写 CLI 时,最好是无障碍的体验。继 FastAPI 巨大成功之后,Sebastián Ramírez 用同样的原则为我们带来了 Typer:一个新的库,通过利用 Python 3.6+ 的类型提示功能,可以编写命令行界面。

这个设计确实使 Typer 脱颖而出。除确保你的代码被正确地记录下来外,你还可以通过最少的努力来获得一个带有验证的 CLI 接口。使用类型提示,你可以在 Python 编辑器中获得自动完成功能(比如 VSCode),从而提高工作效率。

为增强 Typer 功能,它的内部是基于 Click 开发的,Click 是非常著名的,并且已经通过了实战检验。这意味着,它可以利用其所有的优点、社区和插件,同时用较少的样板代码从简单的开始,并在需要时添加更多的复杂性。

一如既往,它的文档真的很出色,可以作为其他项目的典范。这绝对是不容错过的作品。

2. Rich

接着 CLI 的话题,谁说终端应用程序必须是单调的白色,如果你是一个真正的 hacker,就必须是绿色的?那黑色呢?

你想为你的终端输出加上颜色和样式吗?在一瞬间打开复杂的表格?轻松地展示华丽的进度条?Markdown?Emojis?Rich都能满足你的要求。请看下面的截图,来了解一下它的功能。

毫无疑问,这个库将终端应用的使用体验提高到了一个全新的水平。

3. Dear PyGui

就像我们看到的那样,终端应用可以做到很华丽,但有时候这还不够,你需要一个真正的 GUI。为此,Dear PyGui应运而生,它是流行的 Dear ImGui C++ 项目的 Python 移植。

Dear PyGui 使用了一种被称为即时模式的范例,它在电子游戏中很流行。这基本上意味着动态 GUI 是逐帧独立绘制的,无需持久化任何数据。这样,这个工具与其他 Python GUI 框架就有了本质上的区别。它性能优异,并用计算机的 GPU 来促进高动态界面的构建,这在工程、模拟、游戏或数据科学应用中是经常需要的。

不需要非常陡峭的学习曲线,Dear PyGui 就能使用,并且可以在 Windows 10(DirectX 11)、Linux(OpenGL 3)和 MacOS(Metal)上运行。

4. PrettyErrors

简单的乐趣。这是让你思考的库之一:为什么以前没有人想到这个问题?

PrettyErrors只做一件事,而且做到了极致。在支持彩色输出的终端中,它将隐秘的栈跟踪转换为更适合人类眼睛解析的东西。再也不用扫描整个屏幕来寻找异常的罪魁祸首了……现在,你就可以一眼发现它!

5. Diagrams

我们程序员喜欢解决问题和编码。但是有时候,我们需要把复杂的架构设计作为项目文档的一部分来向其他同事解释。传统上,我们会求助于 GUI 工具,通过这种方式,我们就可以在图表和可视化方面做一些努力,并将其用于演示和文档。但是,这种方式并非唯一。

通过直接在 Python 代码中绘制云系统架构,Diagrams允许你不使用任何设计工具。AWS、 Azure、 GCP 等多个云供应商都可以轻松地使用它的一些图标。这使得创建箭头和组变得非常简单。真的,它只有几行代码!

基于代码的 Diagrams 最好的地方是什么?通过标准 git,你可以跟踪版本控制的更改!开发人员将会非常高兴。

6. Hydra 与 OmegaConf

当进行机器学习项目的研究和实验时,总是有无数的设置需要尝试。配置管理可以变得非常复杂,并且在重要的应用程序中非常快速。要是能找到处理这类复杂问题的结构方法该多好啊。

Hydra是一种工具,它可以让你以一种可组合的方式构建配置,并从命令行或配置文件中覆盖某些部分。

为了说明使用该库所能简化的一些常见任务,假设我们正在实验的模型有一个基础架构,并且有多种变体。通过 Hydra,就可以定义一个基础配置,然后使用它们的变体运行多个作业。

python train_model.py variation=option_a,option_b

本文转自网络,文章版权归原作者所有。暂未找到原作者,如有知晓请留言。

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP