精选Python开源项目Top10!

作者 | MyBridge

译者 | Linstancy

整理 | Jane

出品 | AI科技大本营

【导读】过去一个月里,我们对近 250 个 Python 开源项目进行了排名,并挑选出热度前 10 的项目。这份清单的平均 github star 数量高达 1140,涵盖了包括性能分析、提取 PDF 中的表格、HTTP Framework、Refactoring, Unix-gazing shell、HTTP APIs、PaperTTY 等主题,希望你能从中找到一个你所感兴趣的项目深入探究。

▌开源项目一:Py-spy

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

Github 链接: https://github.com/benfred/py-spy?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

▌开源项目二:Camelot

Camelot 是一款用于从 PDF 文件中提取表格的 Python 应用库。它能够帮助你轻松地从 PDF 文件中提取出所需的表格数据并转化为 Pandas DataFrame 格式,并以 JSON、EXCEL 或 HTML 的格式输出。

Github 链接: https://github.com/socialcopsdev/camelot?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

▌开源项目三:Responder

Responder 是一款基于 Python 的 HTTP 服务框架,它将为你提供一个预安装版本的 ASGI 应用程序,包含 jinja2 模板,基于 uvloop 的生产网络服务器,能够自动响应 gzip 压缩服务请求。

Github 链接: https://github.com/kennethreitz/responder?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

▌开源项目四:Bowler

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

Github 链接: https://github.com/facebookincubator/bowler?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

▌开源项目五:Xonsh

Xonsh 是一种基于 Python,专注于 Unix 的 Shell 语言和命令行提示符的跨平台项目。该语言是 Python 3.4+ 的超集,且带有额外使用于 Bash 和IPython 的其他 shell 原语。Xnosh 适用于专家和新手的日常使用,并支持所有主要的操作系统,包括 Linux,Mac OSX 和 Windows。

Github 链接: https://github.com/xonsh/xonsh?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

▌开源项目六:Molten

Molten 是一个适用于 Python 3.6 及更高版本构建 HTTP API 的小型,可扩展,快速且高效的框架。

Github 链接: https://github.com/evyatarmeged/Raccoon?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

▌开源项目七:Dbxfs

Dbxfs 是一款基于 Python3.5+ 的,用于 Dropbox 的用户文件系统。它允许你挂载 Dropbox 文件夹,就像将它挂在本地文件系统上一样。Dbxfs 与官方Dropbox 客户端的不同之处主要在于:

  • 访问需要网络连接
  • 访问不需要磁盘空间,但如果磁盘空间可用,则会缓存。

Dbxfs 已经在 OpenBSD,Linux 和 macOS 平台上进行了测试,但它也能够在任何提供与 FUSE 兼容的库或任何能够挂载 SMB 共享的 POSIX 系统上运行,而对 Windows 平台的支持即将推出。在诸如 ARM 这样非 x86 架构上运行时,Dbxfs 不需要也不依赖特定的文件系统。

Github 链接: https://github.com/rianhunter/dbxfs?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

▌开源项目八:Twitter-cleanup

PyPortfolioOpt 是一款基于 python 的金融投资组合优化的开源项目,其中包括经典有效的前沿和实验方法。它应用广泛且易于扩展,对投资者和从业者同样适用。PyPortfolioOpt 可以帮助你高效地组合 alpha 生成器。你可以访问 ReadTheDocs 上的文档以深入了解该项目。

Github 链接: https://github.com/robertmartin8/PyPortfolioOpt?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

▌开源项目九:Sotawhat

Sotawhat 能够通过抓取 arxiv 论文来总结论文摘要并返回最新的研究结果,它能帮助你了解每天最新的论文和研究进展。

Github 链接: https://github.com/chiphuyen/sotawhat?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

▌开源项目十:PaperTTY

PapertTTY 是一个通过命令行驱动的 Python 模块,用于将 Linux 虚拟终端或标准输入的内容呈现到 Waveshare 电子显示器上。它具有如下重要特征:

  • 适用于Raspberry Pi 和Raspbian 的设计。
  • 它能够帮助你轻松地运行交互式控制台程序(包括vim,tmux,irssi,nethack 等),并通过脚本显示你想要的任何内容。
  • 运行速度快,特别是对于小字体,还可以交互式使用,但还需进一步改进甚至更快。此外,它在Raspberry Pi 3 上的使用比Zero 更有趣。
  • 只有更改的区域才会在显示屏上更新,因此键入比全屏滚动更快。
  • 它能够绘制光标并在图像移动时更新图像。
  • 无闪烁。
  • 允许更改字体,字体大小,方向和一些其他参数。
  • 支持TrueType 和位图字体(采用PIL 格式)。
  • 捆绑systemd 服务单元,可以在启动时尽早启动服务并优雅地停止服务。

目前仅支持使用单色 2.13“HAT 进行测试,但它也适用于其他型号,其他功能还有待完善。

Github 链接: https://github.com/joukos/PaperTTY?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

原文发布于微信公众号 - AI科技大本营(rgznai100)

原文发表时间:2018-11-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏开源优测

jmeter性能测试实践注意事项12

前言 在使用jmeter进行性能测试实践时,必须要注意jmeter的一些局限性,充分使用jmeter优势功能,这样才能更好的发挥出jmeter的能力。 要注意限...

38580
来自专栏敏捷开发&项目管理

项目从VS2010 升 VS2012 遇到的代表性问题及解决

最近公司要把项目从使用VS2010 转成VS2012,开始以为是个很简单的事情,后来发现有点头疼。 现在问题解决了,发现主要有以下3个方面的问题 第三方组件,对...

37590
来自专栏WeTest质量开放平台团队的专栏

【长文干货】浅析分布式系统

我们常常会听说,某个互联网应用的服务器端系统多么牛逼,比如QQ、微信、淘宝。那么,一个互联网应用的服务器端系统,到底牛逼在什么地方?为什么海量的用户访问,会让一...

14130
来自专栏Golang语言社区

Golang语言社区--游戏开发-Tiled Map Editor瓦片地图编辑器使用教程

Tiled 地图编辑器是一种用于通用目的的编辑器,可以用来创建2D和2.5D的地图。特点是比较好用,风格类似mini版的Photoshop Tiled 地图编辑...

53660
来自专栏服务端技术杂谈

.Net做大型互联网项目性能差?看看StackOverflow的架构是怎么样的?

小编: 在整个web开发世界里,java,.net,PHP是三足鼎立的状况,但是相对于java和php都有优秀的大型互联网架构解决方案,.net的响应架...

35050
来自专栏高性能服务器开发

C++ 高性能服务器网络框架设计细节(节选)

这篇文章我们将介绍服务器的开发,并从多个方面探究如何开发一款高性能高并发的服务器程序。需要注意的是一般大型服务器,其复杂程度在于其业务,而不是在于其代码工程的基...

73640
来自专栏Crossin的编程教室

微信机器人进化指南

听说阿尔法狗又要挑战柯杰了。时至今日,人工智能不断刷新我们对这个世界的理解。或许再过不久,你真的不知道跟你在网上聊天的对象还是不是一个“人”,也不知道自己的工作...

92070
来自专栏机器学习算法与Python学习

推荐几个适合新人上手的Python项目

17980
来自专栏杨建荣的学习笔记

Greenplum数据仓库迁移小记

迁移无小事,所以从开始计划将公司的Greenplum集群迁移,到最后落地,整个过程虽然说不上是波折,但是也算是有不少的故事,各种准备和协调。

26230
来自专栏WeTest质量开放平台团队的专栏

iOS Push详述,了解一下?

本文主要对iOS Push的在线push、本地push及离线(远程)push进行梳理,介绍了相关逻辑,测试时要注意的要点以及相关工具。

67060

扫码关注云+社区

领取腾讯云代金券