本文主要讲解“如何理解Python库”,简单明了,易学易懂。请跟随边肖的思路,一起学习学习“如何理解Python库”。
1. Typer
您可能不需要编写命令行界面应用程序,但有时您需要。FastAPI大获成功后,天戈洛利用同样的原理开发了typo,这是一个新的库,允许您使用Python 3.6的类型提示功能编写命令行界面。
这种设计不仅可以确保您的代码被正确记录,而且可以更快地获得带有验证的命令行界面。通过使用类型提示,可以在编辑器(如VSCode)中自动完成代码,大大提高了工作效率。
为了增强其功能,Typer还可以与命令行神器Click配合使用,这意味着Typer可以充分利用Click的所有优势和插件,根据自身需求实现更复杂的功能。
公开来源地址:https://github.com/tiangolo/typer.
2. Rich
谁说终端应用一定要单黑白的?其实也可以上色。
是否要为终端添加颜色和样式?您希望您的终端快速打印复杂的表格吗?你想轻松显示漂亮的进度条和表情符号吗?所有这些功能都可以在Rich中实现,看看下面这个例子的截图就明白了:
这个库将终端应用的体验提升到了一个全新的水平。
公开来源地址:https://github.com/willmcgugan/rich.
3. Dear PyGui
虽然Rich可以让你的终端应用变得漂亮,但有时候还不够。你更需要的是一个真正的GUI。亲爱的PyGui是一个易于使用且功能强大的Python GUI框架。
亲爱的PyGui使用了视频游戏中非常流行的即时模式范例。这基本上意味着动态GUI是一帧一帧独立绘制的,不需要保存任何数据。这也是亲爱的PyGui和其他Python GUI框架的区别。在工程、模拟、游戏或数据科学应用中,经常需要使用亲爱的PyGui的高性能。
亲爱的PyGui支持Windows 10 (DirectX 11)、Linux (OpenGL 3)和MAC OS(金属)。
公开来源地址:https://github.com/hoffstadt/DearPyGui.
4. PrettyErrors
是一个简化Python错误消息的工具。漂亮的男人只会做一件事。支持终端颜色输出,标记文件堆栈痕迹。这样,你就不需要扫描整个屏幕来发现异常的部分。
公开来源地址:https://github.com/onelivesleft/PrettyErrors.
5. Diagrams
程序员喜欢解决问题和编写代码,但有时我们需要向其他同事解释复杂的架构设计,作为项目文档的一部分。一般来说,我们将使用图形用户界面工具来处理图表和可视化文档。但是还有更好的方法。
图可以让你不用任何设计工具,直接用Python代码绘制云系统架构,它的图标对于包括AWS、Azure、GCP在内的几家云服务提供商都非常有用。这使得创建箭头和组非常容易,并且只需要几行代码。
公开来源地址:https://github.com/mingrammer/diagrams.
6. Hydra and OmegaConf
在机器学习项目中做研究和实验时,总是有无数的设置可以尝试。在重要的应用程序中,配置管理可能会变得非常复杂。如果有一个结构化的方法来处理这些问题就好了。
Hydra允许您以可组合的方式构建配置,并遵循订单。
令行或配置文件中覆盖某些部分。下面举个例子,关于如何使用Hydra定义一个基本配置,然后用它们运行多个不容的任务:
python train_model.py variation=option_a,option_b
开源地址:https://github.com/facebookresearch/hydra
7. PyTorch Lightning
每一个能够提高数据科学团队生产力的工具都是非常宝贵的。PyTorch Lightning通过将科学与工程分离的方式来提高效率,它有点像TensorFlow的Keras,在某种意义上,它可以使你的代码更加简洁,不过它依然还是PyTorch,你依然可以访问所有常用的api。
这个库能够使DL / ML研究的40多个部分实现自动化,例如GPU训练、分布式GPU(集群)训练、TPU训练等等……
开源地址:https://github.com/PyTorchLightning/PyTorch-lightning
8. Hummingbird
Hummingbird是微软的一项研究成果,它能够将已经训练好的ML模型汇编成张量计算,从而不需要设计新的模型。还允许用户使用神经网络框架(例如PyTorch)来加速传统的ML模型。它的推理API跟sklearn范例十分相似,都可以重复使用现有的代码,但是它是用Hummingbird生成的代码去实现的。
开源地址:https://github.com/microsoft/hummingbird
9. HiPlot
几乎每一个数据科学家在他们的职业生涯中都有过处理高维数据的经历。不幸的是,人类的大脑并不能完全凭直觉处理这类数据,所以我们必须求助于其他技术。
今年早些时候,Facebook发布了HiPlot,它是用平行图和其他的图像方式,帮助AI研究者发现高维数据的相关性和模型,是一款轻巧的交互式可视化工具。HiPlot是交互式的,可扩展的,因此你可以在Jupyter Notebooks或者它自己的服务器上使用它。
开源地址:https://github.com/facebookresearch/hiplot
10. Scalene
随着Python库的生态系统变得越来越复杂,我们发现自己编写的代码越来越依赖于C扩展和多线程代码。如何测试性能这就成一个问题,因为CPython内置的分析器不能正确地处理多线程和本机代码。
Scalene是一个高性能的CPU内存分析器,它能够正确处理多线程代码,并区分运行Python和本机代码所花费的时间。不需要修改代码,只需要使用scalene从命令行运行脚本,它就可以为你生成一个文本或HTML报告,显示代码每行的CPU和内存使用情况。
感谢各位的阅读,以上就是“如何理解Python库”的内容了,经过本文的学习后,相信大家对如何理解Python库这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/37469.html