作者 | Mybridge

编译 | 仲培艺

出品 | CSDN(ID:CSDNNews)

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

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

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

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

Python Toolkit

1. Pipenv

  • Star 数:15710

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

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

2. Pyxel

  • Star 数:4884

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

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

3. PyTest v3.5

  • Star 数:3631

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

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

4. Poetry

  • Star 数:3228

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

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

5. Loguru

  • Star 数:3048

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

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

6. Faust

  • Star 数:2733

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

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

7. Pampy

  • Star 数:2399

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

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

8. Pyre-check

  • Star 数:2242

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

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

9. Delorean

  • Star 数:1519

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

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

10. Cirq

  • Star 数:1394

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

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

11. Python-nubia

  • Star 数:1032

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

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

Web

12. Requests-HTML

  • Star 数:8995

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

  • 介绍:一个解析 HTML 的库

13. Bokeh

  • Star 数:8943

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

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

14. Vibora

  • Star 数:4665

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

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

15. Pywebview v2.0

  • Star 数:1208

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

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

16. WhatWaf

  • Star 数:995

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

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

17. Molten

  • Star 数:796

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

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

Terminal

18. Termtosvg

  • Star 数:7522

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

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

19. Asciinema v2.0

  • Star 数:6668

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

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

20. Termgraph

  • Star 数:2005

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

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

Code Editor

21. Black

  • Star 数:7629

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

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

22. Algojammer

  • Star 数:2750

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

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

23. Bowler

  • Star 数:879

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

  • 介绍:一种用于在语法树级(syntax tree level)操纵 Python 的重构工具,可以实现安全而大规模的代码修改任务,同时保证生成的代码可以编译和运行。它提供了一个简单的命令行界面和流畅的 Python API 接口,用于在代码中进行复杂的代码修改。具体来说,Bowler 通过一系列选择器、过滤器和修改器来调用 Query API 接口实现脚本重构。使用现有的 API 可以进行许多简单的修改,但你也可以根据需要,自定义选择器、过滤器和修改器来构建更复杂的重构过程。

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 解释器上进行分析工作。

25. Birdseye

  • Star 数:1068

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

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

26. Icecream

  • Star 数:728

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

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

Compiler

27. Transcrypt

  • Star 数:1561

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

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

28. Pyodide

  • Star 数:1041

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

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

Data Related

29. Voluptuous

  • Star 数:1368

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

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

30. Botflow

  • Star 数:933

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

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

31. Fast-Pandas

  • Star 数:798

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

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

Chart

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

  • Star 数:3172

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

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

33. Chartify

  • Star 数:1817

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

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

34. Hypertools v0.5

  • Star 数:1353

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

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

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

(本文为AI科技大本营转载文章,转载请联系作者)

精彩推荐

4月13-14日,CSDN将在北京主办“Python开发者日(2019)”,汇聚十余位来自阿里巴巴、IBM、英伟达等国内外一线科技公司的Python技术专家,还有数百位来自各行业领域的Python开发者,共同探讨Python在不同场景下的的应用优势和实战经验。即刻扫码抢购早鸟票,限量发售!


推荐荐阅读:

  • 3.15曝光:40亿AI骚扰电话和11家合谋者

  • 微软亚研院提出用于语义分割的结构化知识蒸馏 | CVPR 2019

  • Google又逆天:语音输入离线实时输出文字,仅占80MB!然而……

  • 西工大开源拥挤人群数据集生成工具,大幅提升算法精度 | CVPR 2019

  • R和Python谁更好?这此让你「鱼与熊掌」兼得

  • 10行Python,搭建一个游戏AI | 视频教程

  • 云计算时代运维的出路在哪?

  • 30岁的万维网活不长了! 蒂姆·伯纳斯·李要借去中心化亲手杀死它, 你再也不用担心...

  • 互联网裁员潮亲历者:那些阵痛、挣扎与去向

❤点击“阅读原文”,查看历史精彩文章。

近万个Python开源项目中精选Top34!相关推荐

  1. 从15000个Python开源项目中精选的Top30,Github平均star为3707,赶紧收藏!

    翻译 | AI科技大本营(ID:rgznai100) 参与 | SuiSui 继推出2017年机器学习开源项目Top 30榜单后,Mybridge AI又推出了一个Python开源项目Top 30榜单 ...

  2. 收藏!15000个Python开源项目中精选Top30!

    来源:授权自AI科技大本营(ID:rgznai100) 本文长度为1700字,建议阅读6分钟 本文基于项目质量.用户参与度以及其他因素为你列出Python开源项目Top 30,建议收藏. 继推出201 ...

  3. 从15000个Python开源项目中精选TOP30,GitHub平均star为3707,赶紧收藏!

    翻译 | AI科技大本营(ID:rgznai100) 参与 | SuiSui 继推出2017年机器学习开源项目Top 30榜单后,Mybridge AI又推出了一个Python开源项目Top 30榜单 ...

  4. 赶紧收藏 : 从15000个Python开源项目中精选的Top30

    本文转自:AI科技大本营(ID:rgznai100): 本文由AI科技大本营 翻译,参与 | SuiSui;  获授权: 继推出2017年机器学习开源项目Top 30榜单后,Mybridge AI又推 ...

  5. Python开源项目总结

    出品 | Python大本营 在这篇文章中,营长为大家新鲜出炉了一份 Python 开源项目 Top100 清单!这些项目都是营长每月通过收集 Mybridge 的数据整理而来的,是不是很棒!(我要在 ...

  6. 精选Python开源项目Top10!

    作者 | MyBridge 译者 | Linstancy 整理 | Jane 出品 | AI科技大本营 [导读]过去一个月里,我们对近 250 个 Python 开源项目进行了排名,并挑选出热度前 1 ...

  7. 8月精选Python开源项目Top10

    作者 | Mybridge 译者 | linstancy 编辑 | Jane 出品 | AI科技大本营 [导读]过去一个月里,我们对近 250 个 Python 开源项目进行了排名,并挑选出热度前 1 ...

  8. 最新的10个优质Python开源项目

    在过去的一个月中,我们对近250个Python开源项目进行了排名,选出了前十. 我们比较了在此期间有新的发布或是重大发布的项目.Mybridge AI基于多种因素对项目进行排名,以衡量其在专业人员眼中 ...

  9. 这里有10个优质Python开源项目,来帮你学好Python

    导读:在过去的一个月中,我们对近250个Python开源项目进行了排名,选出了前十. 我们比较了在此期间有新的发布或是重大发布的项目.Mybridge AI基于多种因素对项目进行排名,以衡量其在专业人 ...

最新文章

  1. C# 使用微软的Visual Studio International Pack 类库提取汉字拼音首字母
  2. 单元测试代码:SpringTest+JUnit
  3. mysqldump 定时备份数据(全量)
  4. mysql group by null_MySQL无GROUP BY直接HAVING返回空的问题分析
  5. 7-4 求下一天 (30 分)
  6. .Net CF 开发菜鸟笔记(PDA应用开发)
  7. 3 笔经小结-智力篇
  8. DeepRacer 找到的最好的奖励函数 reward function
  9. java 两个 多个 版本 同时使用 共存 java8 和 java11
  10. XSS修炼之独孤九剑——笔记
  11. 所处网络导致虚拟机的域名解析失败
  12. Kali Linux 使用Armitage
  13. Python Scarpy Crawl Dmoz Settings
  14. 有效发布促成高效软文营销 | 媒介启航
  15. 我是一位40岁的“老程序员”,我有一些想法
  16. 计算机社团展示ppt,学生社团管理系统.ppt
  17. Python:计算天干地支
  18. 同时基于c++与python版本的opencv进行读取,显示,修改,保存图片操作
  19. Halcon学习笔记之支持向量机(一)
  20. Excel导入数据,时间处理

热门文章

  1. C++中public、protect和private用法区别
  2. linux 新增swap分区
  3. 计算机冒泡排序教学,绵竹职中计算机给冒泡排序教案.doc
  4. java地图上标记_绘制点标记-在地图上绘制-开发指南-Android 地图SDK | 高德地图API...
  5. java中batch基础_详解Spring batch 入门学习教程(附源码)
  6. php composer 无法下载,php – composer无法安装laravel / passport
  7. JUnit测试类完成后事务是默认 回滚的。只能查询数据,不能增删改。
  8. Login failed for user 'NT AUTHORITY\SYSTEM'. 原因: 无法打开明确指定的数据库。异常处理...
  9. Linux内核初期内存管理---memblock(转)
  10. mac下mysql5.7.10密码问题