49

9月Python开源项目Top10

 5 years ago
source link: https://blog.csdn.net/dQCFKyQDXYm3F8rB0/article/details/82919432?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
BbmaQvM.png!web

作者 | Mybridge

译者 | 王天宇

整理 | Jane

出品 | AI科技大本营

【导读】我们从过去一个月近 250 个 Python 的开源项目中,精心挑选出了最热门的 10 个。在挑选过程中,我们始终在各个项目之间作比较,并基于大量的因素来估量项目的专业水平,从而对其进行排名。

(此前发布过多篇收藏党喜欢的文章,也是来自Mybridge:① 9月精选机器学习文章Top109月推荐 | 从近1000篇Python文章中精选Top108月精选Python开源项目Top108月精选机器学习开源项目Top107月Python和机器学习最佳开源项目Top 10!Python热文Top10,精选自1000篇文章干货 | 1400篇机器学习的文章中,这10篇是最棒的!

这些项目在 Github 上获得的平均 star 数高达 603,涉及的话题包括:命令行、流水式处理、SoundCloud、音乐理论、机器学习、虚拟机、WebAssembly、数据驱动、ASCII 码、Embeddings。

对于程序员来说,开源项目是十分有帮助的。希望你能从中找到可以激发你灵感的有趣项目。最后希望大家假期快乐!

▌No.1 Python-nubia:一款命令行与交互式 shell 框架

Nubia 是一款由 Python 编写的,用于建立命令行应用的轻型框架,是由 Facebook 团队开发的。该框架有以下几个特点:

  • 可实现流畅地自动补全的交互模式
  • 可切换的 bash/zsh 补全方式
  • 在交互模式中自定义状态栏
  • 可选的基于 IPython 的交互式shell
  • 用Python3 的类型标注做输入类型验证

▌No.2 Faust:一个用于建立流应用的库

Faust 是一个用 Python 编写的,可用于创建流应用的库。Robinhood 使用 Faust 库建立了高性能的分布式系统,以及每天可处理数十亿事件的实时数据流。Faust 同时提供了流处理和事件处理两种方法。它没有使用 DSL,只用了 Python,这意味着在做流处理过程中,你可以使用任何你喜欢的 Python 库,如 Numpy、PyTorch、Pandas、NLTK 等等。

▌No.3 Soundcloud-dl:以 128kbps 的速度下载 SoundCloud 的音乐

该工具可实现以 128kbps 的速度从 SoundCloud 平台下载音乐、专辑以及标签等信息。

jYvMR3V.png!web

项目链接:

https://github.com/sdushantha/soundcloud-dl?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

▌No.4 PyTheory:人类的音乐理论

这是一个致力于让音乐理论走近全人类的库,也就是让音乐看起来不再那么“高大上”。该工具可用来测量音调,听录音然后进行演奏,还能为所有乐器的已知和弦生成五线谱进阶图。

▌No.5 Lazydata:一个极简的 Python 库

Lazydata 是一个极简主义风格的 Python 库,可用于将数据依赖装入 Python 项目中。在工作中你可能会遇到这种情况,将所有数据文件存储在 git 中,导致文件夹臃肿,代码与数据不同步。lazydata 为这一问题提供了解决方案,它仅将数据文件的引用存储在 git 中,然后在必要的时候将所需的数据文件进行同步。该库有以下几个优点:

  • 有助于保持 git 目录有条理,同时可以无缝衔接任何数据文件
  • 哈希文件和版本自动控制保证了数据的一致性
  • 可选择自己的远程存储后端:AWS S3 或 SSH 目录

▌No.6 Python-jvm-interpreter: 用 Python 编写的 Java 虚拟机

这是一款用 Python 实现的 Java 虚拟机,可以对 Java 类文件进行解析和编译。

UrMF7vV.png!web

▌No.7 Pyodide:Python 科学堆栈,编译为 WebAssembly

Pyodide 提供了 JavaScript 和 Python 之间的对象转换。当处于浏览器中时,这意味着 Python 拥有使用全部 Web API 的权限。

▌No.8 Botflow:一款由数据驱动的 Python 快速编程框架

该框架是由 Python 编写的数据驱动编程框架,用于数据工作流任务。所有功能都由管道连接,通过数据交流。当数据到来时,函数会被调用并返回结果。该框架有以下两个优点:

有助于数据解耦,有泛函性

便于重复利用

▌No.9 Asciify:用 Python 将图像转为字符画

ASCIIFY 是由 Python 编写的脚本,它可以处理输入的图片,然后返回一段与图片相似的文本。换句话说,它用特定的符号将图像进行了复刻。

▌No.10 Lmdb-embeddings:快速词向量查询

Lmdb-embeddings 是用 Python 编写的快速词向量查询方法,提供预训练嵌入,可即时使用,可以同时使用若干个 embeddings,但只占用很少的内存,例如,在使用传统方法时,glove-840B 大约花 2 分钟时间加载 4GB 内存。若使用 LMDB 进行管理,glove-840B 可以立即访问,且只占用了 2MB 内存。

–【完】–

rMNnemI.png!web


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK