caabd41eb6ca5e44baf7ce9da5302237.png

授权自AI科技大本营(ID:rgznai100)

本文多干货建议收藏

本文为你整理2019年最值得关注的34个Python开源项目。

a44060dbc52414789a4bc38de37bb498.png

[ 导读 ]踏着人工智能、区块链的东风,近年来一路“横冲直撞”的 Python 在实现了从小众语言到主流的完美转身后,一头扎进了 2019,依旧没有透出丝毫停下来的架势,反倒有些越烧越热的味道。本文将为你介绍 2019 年最值得关注的 34 个 Python 开源项目——Let's go!

在过去的一年里,Mybridge 比较了近 10000 个 Python 开源库,并从中挑选出最实用的 34 个工具来帮助你开发。

这些开源项目的平均 Star 数为3293,下面将把它们分为 8 类进行分享:

d8f597f6300630b91fc85651c63ac9f3.png

开源项目对程序员来说意义非凡,可以大大提升软件开发速度,让我们花些时间,一起来看看这些在可能被你错过了的 Python 开源项目吧。

Python Toolkit

1. Pipenv

Star 数:15710

GitHub:https://github.com/pypa/pipenv

介绍:Pipenv 是 Python.org 官方推进的 基于 pip 的 Python包管理工具,旨在将所有包管理工具(如 bundler、composer、npm、cargo、yarn 等)的优点集中应用于 Python 领域中的工具,对各个平台都有很好的支持。

1153b206a0c5c2976c929abbc31cc033.png

2. Pyxel

Star 数:4884

GitHub:https://github.com/kitao/pyxel

介绍:一个用 Python 编写复古游戏的开发环境。

7225b6d426b79df9ed923836884a0b12.png

3. PyTest v3.5

Star 数:3631

GitHub:https://github.com/pytest-dev/pytest

介绍:一个非常成熟的全功能的 Python 测试框架,使编写小型测试变得容易,同时支持复杂的功能测试。

c64d2f01fb72c81a49b6870565fa617d.png

4. Poetry

Star 数:3228

GitHub:https://github.com/sdispater/poetry

介绍:让 Python 依赖管理和打包变得容易。

19854947a69b7dd76b7f14219a57ec55.png

5. Loguru

Star 数:3048

GitHub:https://github.com/Delgan/loguru

介绍:一个 Python 日志记录库,使 Python 日志变得极端简单。

a8235b09059915a3a725fcb611dfad1e.png

6. Faust

Star 数:2733

GitHub:https://github.com/robinhood/faust

介绍:Faust 是一个流处理库,用于构建 Python 流应用程序,将 Kafka 流中的思想移植到 Python 中。

fd545305fb9b4f46cdaabf97b385470a.png

7. Pampy

Star 数:2399

GitHub:https://github.com/santinic/pampy

介绍:优雅的 Python 模式匹配库——你梦寐以求的 Python 模式匹配。Pampy 相当小(150行),速度相当快,并且使代码更具可读性,更容易推理。

6fd0448dd4d50d94ddddfe8bb78d55b2.png

8. Pyre-check

Star 数:2242

GitHub:https://github.com/facebook/pyre-check

介绍:Facebook 开源的 Python 快速静态类型检查器。

ad788a68becccf5031c1b2df1b79cb42.png

9. Delorean

Star 数:1519

GitHub:https://github.com/myusuf3/delorean

介绍:Delorean 是 Python 里一个很方便的日期时间库,可以让人更简单省心的获取时间,不必受困于时间模块中的各种问题。 

59df887f7791f15f594a8c35e871ee93.png

10. Cirq

Star 数:1394

GitHub:https://github.com/quantumlib/Cirq

介绍:是 Google 专为 NISQ 算法打造的框架,用于创建、编辑和调用嘈杂中型量子 (NISQ,Noisy Intermediate-Scale Quantum),允许开发者为特定的量子处理器编写量子算法。 

c4056e0a9268218cdfba269d7515498f.png

11. Python-nubia

Star 数:1032

GitHub:https://github.com/facebookincubator/python-nubia

介绍:一款由 Python 编写的,用于建立命令行应用的轻型框架(命令行与交互式 shell 框架),由 Facebook 团队开发。

027b49767e0ac117b33b0217e48239de.png

Web

12. Requests-HTML

Star 数:8995

GitHub:https://github.com/kennethreitz/requests-html

介绍:一个解析 HTML 的库。

4a41857fe916b8454561c9858e9ef827.png

13. Bokeh

Star 数:8943

GitHub:https://github.com/bokeh/bokeh

介绍:一个 Python 交互式可视化库,支持在现代 Web 浏览器中对数据进行美观且有意义的可视化表示。

fe3a48634380bdb715747ebbbd45db36.png

14. Vibora

Star 数:4665

GitHub:https://github.com/vibora-io/vibora

介绍:一个快速、异步且性感的 Python Web 框架。

714bf6ea4fb9b8f9c938ba24ed296956.png

15. Pywebview v2.0

Star 数:1208

GitHub:https://github.com/r0x0r/pywebview

介绍:一个webview 组件的轻量级跨平台原生封装,实现利用 Web 技术开发 GUI 应用,允许在它自己的专用窗口中显示 HTML 内容。

565606d6e84236f4e1418cbe20f22489.png

16. WhatWaf

Star 数:995

GitHub:https://github.com/Ekultek/WhatWaf

介绍:检测并绕过 Web 应用程序防火墙和保护系统。

b4c3df7a59e7c175eff6180392c56f23.png

17. Molten

Star 数:796

GitHub:https://github.com/Bogdanp/molten

介绍:一个用 Python 3.6 或更高版本构建 HTTP API 的迷你、可扩展、快速且高效的框架。

21e9d3b70b9518072acae9cc21c547bb.png

Terminal

18. Termtosvg

Star 数:7522

GitHub:https://github.com/nbedos/termtosvg

介绍:一款录制终端操作的命令行工具,它可以将终端会话录制成一个单独的用 Python 编写的 SVG 动画。

9a23bf307a639b1eb4ec8bfb7ac46ba6.png

19. Asciinema v2.0

Star 数:6668

GitHub:https://github.com/asciinema/asciinema

介绍:Python 内置的终端会话记录器,能够在 Linux 等终端上进行录屏,并且录屏不生成视频文件,而是生成文字形式。

2db00520d933ee5db113d547faf154cc.png

20. Termgraph

Star 数:2005

GitHub:https://github.com/mkaz/termgraph

介绍:在终端中绘制基本图形的 Python 命令行工具。

a3f27a063d1238739993d4a3850c348c.png

Code Editor

21. Black

Star 数:7629

GitHub:https://github.com/ambv/black

介绍:“不妥协”的 Python 代码格式化工具。之所以称之为“不妥协”是因为它检测到不符合规范的代码风格直接就帮你全部格式化好,根本不需要你确定,直接替你做好决定,因此速度也很快。

71726455dbde4056ecc2f6674826c0a6.png

22. Algojammer

Star 数:2750

GitHub:https://github.com/ChrisKnott/Algojammer

介绍:是一个实验性的概念验证代码编辑器,用于在 Python 中编写算法。

4b2818c3b188e529230d8fee925d90ae.png

23. Bowler

Star 数:879

GitHub:https://github.com/facebookincubator/bowler

介绍:一种用于在语法树级(syntax tree level)操纵 Python 的重构工具,可以实现安全而大规模的代码修改任务,同时保证生成的代码可以编译和运行。它提供了一个简单的命令行界面和流畅的 Python API 接口,用于在代码中进行复杂的代码修改。

具体来说,Bowler 通过一系列选择器、过滤器和修改器来调用 Query API 接口实现脚本重构。使用现有的 API 可以进行许多简单的修改,但你也可以根据需要,自定义选择器、过滤器和修改器来构建更复杂的重构过程。

b5494270fc11e7525fc85976d3f52ab6.png

Debugging

24. Py-spy

Star 数:3479

GitHub:https://github.com/benfred/py-spy

介绍:一种由 Python 程序驱动的采样分析器,它允许可视化 Python 程序内容,而无需重新启动程序或以任何方式修改代码。它是用 Rust 语言编写的,运行速度快,计算成本极低,不需要在配置 Python 程序的进程中同时运行,也不会以任何方式中断当前正在运行的程序,这意味着 Py-Spy 可以安全地用于 Python 代码的生成。此外,Py-Spy 适用于 Linux,OSX 和 Windows 等平台,并支持在最新版本的 CPython 解释器上进行分析工作。

3b567f067e9bb290f839e4d6ad910f8f.png

25. Birdseye

Star 数:1068

GitHub:https://github.com/alexmojaki/birdseye

介绍:一个使用 AST 的快速、便捷、表达式为中心的图形化 Python 调试器。

e60db4a59471bc3a5b586f81705dd811.png

26. Icecream

Star 数:728

GitHub:https://github.com/gruns/icecream

介绍: 一个用于甜美和奶油色打印调试的小库。

06b0368f2200a27e314ad54cbdd7f986.png

Compiler

27. Transcrypt

Star 数:1561

GitHub:https://github.com/qquick/Transcrypt

介绍:一款把 Python(Python 3.7)编写的代码转换成 JavaScript 的工具,精简、快速、开放。让你告别手写繁复的 JavaScript 代码,使用相对简明清晰的Python代替这一工作。

5b376cc34c23a17ce9c2d87876a8d72d.png

28. Pyodide

Star 数:1041

GitHub:https://github.com/iodide-project/pyodide

介绍:编译成 WebAssembly 的 Python 科学栈。

635802517b32a8f4b552b21eb553372e.png

Data Related

29. Voluptuous

Star 数:1368

GitHub:https://github.com/alecthomas/voluptuous

介绍:虽然顶着个 Voluptuous(性感丰满的)的名字,但就是一个 Python 数据验证库。

dfb65772d624848c5c527d3ae69b5f9c.png

30. Botflow

Star 数:933

GitHub:https://github.com/kkyon/botflow

介绍:用于数据管道工作(如网络爬虫、机器学习、量化交易等等)的 Python 快速数据驱动编程框架。

38e6b675564741be4a2e8e4d3adb3d7a.png

31. Fast-Pandas

Star 数:798

GitHub:https://github.com/mm-mansour/Fast-Pandas

介绍:Pandas 中针对不同大小数据帧(DataFrame)的不同运算基准。

1f7a181b35dafba0b9bafc789879c037.png

Chart

32. pywonderland:A Tour in the Wonderland of Math with Python(基于 Python 的数学仙境之旅)

Star 数:3172

GitHub:https://github.com/neozhaoliang/pywonderland

介绍:一组 Python 脚本,用于绘制漂亮的图形及模拟有趣的数学算法。

dfb65772d624848c5c527d3ae69b5f9c.png

33. Chartify

Star 数:1817

GitHub:https://github.com/spotify/chartify

介绍:让数据科学家画图变得更轻松的 Python 库。

afbdb47a8248f51107e467cc1f49eed6.png

34. Hypertools v0.5

Star 数:1353

GitHub:https://github.com/ContextLab/hypertools

介绍:高维数据可视化&处理的 Python 工具包(数据降维&可视化工具)。

5b917bfc69d848922a791e45c2c108e2.png

原文链接:

https://medium.mybridge.co/34-amazing-python-open-source-libraries-for-the-past-year-v-2019-93d6ee11aceb

7ce66ec24192a50554359870f96ea316.pngb04968a9e27552e2d40b83e01e465d10.png

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐