流行的Python项目汇总

jopen 10年前

Python作为程序员的宠儿,越来越得到人们的关注,使用Python进行应用程序开发的越来也多。那么,在2013年有哪些流行的Python项目呢?下面,我们一起来看下。

一、测试和调试

  • python_koans :Python Koans 算 “Ruby Koans” 的一部分,作为交互式教程,可以学习 TDD  技巧。
  • sure :Sure 是最适合自动化测试的 Python 工具,包含流利的断言、深度选择器等等特性。
  • responses :用 responses 能令测试更加轻松,这是一个可以伪装各种请求的库。
  • boom :Boom!  Apache Bench 的替代品。作为一个命令行工具,Boom 能对你的应用进行快捷的  smoke test
  • cricket : BeeWare 套件的一部分,cricket 是种图形化工具,协助你进行案例测试。
  • bugjar : BeeWare 套件的一部分,bugjar 是针对 Python 的图形化交互式调试器。
  • pudb :pudn 是针对Python 的全屏命令行调试器。
  • voltron :更好的 gdb 界面。

二、Web框架

  • django-stronghold :试过将 login_required 装饰器四处乱放? 在你的堡垒中令所有 Django 视图有默认 login_required 呗。
  • Falcon Framework :Falcon自称为髙性能云接口框架,号称能在相同硬件条件下提高服务端性能30倍! 听起来有点儿意思?
  • django-xadmin :用 bootstrap 对 django-admin进行了深度升级,提供了可插件安装的仪表盘。
  • clay :基于  Flask 的封装,能令我们轻松的创建 RESTful 后端服务,完整文档可查看 clay 。
  • flask-restful :基于 Flask 的简单框架,用以创建 REST 接口。
  • sandman :Sandman 希望通过REST 接口暴露你现有的app,相关  博客 也值得一读。
  • Django Unchained :名字很髙大上,也的确是 Python Django 初学者的靠谱指南。

三、并发

  • pulsar :部署新web 服务器走起! 有趣的事件驱动的并发框架 ! 兼容从2.6+到pypy 的所有python版本!
  • toro :同步化的Tornado 协程支持。
  • offset :Offset  Go 的 并发模式在 Python 中的实现,请参考相关演讲  幻灯 来理解!

四、任务调度

  • pyres :从  resque 获得灵感的纯Python任务调度模块,是 celery 的替代。
  • dagobah :Dagobah 是Python 完成的简单关系依赖为基础的任务调度模块,还包含很COOL 的关联任务工作流图形工具。
  • schedule :使用生成器模式来为定期任务生成配置的进程调度模块。

五、实用工具

  • howdoi :发觉你总在 Google 一些简单的最简单的编程任务? howdoi能让你远离浏览器,就解决这类事儿!
  • delorean :时间旅行?简单! Delorean 的目标就是令你的Python 项目在处理时间/日期时轻而易举!查阅完备的  文档 。
  • powerline-shell :对于那些想让常用工具漂亮起来人,一定要用 powerline-bash,能打造漂亮的shell提示符,增加力线(powerline),兼容 Bash/Zsh。
  • fn.py :在Python 中谈及函数编程时失落的那节”电池”终于出现了! 如果对  Python函数式编程 有兴趣的立即下手安装体验吧!
  • lice :为你的开源工程方便的追加许可证,而不用自个儿去 Google,支持 BSD、MIT和GPL 以及变种协议。
  • usblock :基于 USB来锁定或是解锁你的笔记本!
  • Matchbox :MatchBox 能在你自个儿的服务器上提供类似Dropbox 风格的备份服务! 基于 Flask 并通过 http 协议进行文件传输。
  • cleanify :用cleanify能异步美化你项目的所有 html/css/js文件。
  • locksmith :Locksmith是AES加密的口令管理器,看起来不错,完全开源,源代码、截屏都有。
  • storm :在Storm的命令行界面,管理你所有的SSH 连接。
  • sqlparse ::这个很给力! sqlparse 是个 SQL 有效性分析器,支持解析/分裂/格式化SQL 语句。
  • autopep8 :能自动化以  pep8 来格式化你的代码。
  • colout :colout用以在命令行中色彩化输出,这就从其  github page 查看范例来体验吧。
  • bumpversion :版本号冲撞总是恼人的,而每个人总是忘记给发行版本打tag,bumpversion 用一条简单的命令简化了这方面的操作。
  • pyenv :需要更好的管理你Python的多版本环境 ? pyenv 让你能简洁的作到!(甚至超出你的预期!有插件能将 VirtualEnv 也无缝结合进来!)
  • pip-tools :一整套能令你的Python 项目保持清爽的工具。
  • cdiff :Cdiff是种非常 nice 的工具,可以用彩色输出统一diff 格式信息,或用双栏形式来展示。

六、数据科学及可视化

  • data_hacks :由 bitly 发布的一堆数据分析用命令行工具。这些工具接受命令行或是其它工具输入的数据,轻易的生成柱图以及直方图等等。
  • 给黒客的概率编程和贝叶斯方法 :这书是极好的,介绍如何用贝叶斯方法和概率编程进行数据分析,而且每章都提供了用以 iPython Notebooks 的示例。
  • simmetrica :想对自个儿的应用基于时间的数据序列 进行展示、汇总、分享嘛? 赶紧上 simmetrica 吧,同时还提供了可定制的仪表盘。
  • vincent : Python构建的专为运用D3.js 进行可视化的vega转换工具。
  • bamboo :一种简洁的实时数据分析应用,bamboo 提供了一个进行合并、汇总、数值计算的数据实时接口。
  • dataset :难以置信的工具,dataset让对数据库的读写简单的象对 JSON 文件的操作,没有其它的文件配置,顷刻间就让你在BOSS 面前高大上起来。
  • folium :喜欢地图?也爱Python? Folium 让你在地图上自在操纵数据。
  • prettyplotlib :用prettyplotlib来强化你的 matplotlib,让你默认的matplotlib输出图片更加漂亮.
  • lifelines :有兴趣在Python 中研究 生存分析 的话,不用观望了,用lifelines! 包含对 Kaplan-Meier、Nelson-Aalen和生存回归分析。

七、编辑器及其改善

  • sublime-snake :想在无尽的coding中喘口气? 当然是这种经典游戏了……
  • spyderlib :又一个用Python 写的开源IDE。
  • vimfox :对于Vim党最贴心的web专发工具,VimFox 能让 vim 实时的看到 css/js/html 的修改效果,能神奇的让 vim 中的修订,立即在浏览器中看到。
  • pcode :基于 Py3 的IDE,通过简单的UI提供了重构、工程管理等。

八、持续交付

  • metrology :这个库很酷,支持你对应用进行多种测量并轻松输出给类似  graphite 的外部系统。
  • python-lust :支持在Unix 系统中用Python 实现一个守护进程。
  • scales :Scales 对你的Python 应用进行持续状态和统计,并发送数据到  graphite 。
  • glances :跨平台,基于  curses 命令行的系统监视工具。
  • ramona :企业级的应用监管。 Ramona 保证每个进程在值,一但需要立即重启,并有监控/日志输出,会发送邮件提醒。
  • salmon :基于  Salt Stack 的多服务监视系统,即能作报警系统,也能当监控系统。
  • graph-explorer :Graph-explorer 是对  Graphite 面板的增强,比原版的好很多,值得体验。
  • sovereign :Sovereign 是一系列  ansible 的攻略手册,能为自个儿建造个私人云。
  • shipyard :能在指定的机器上弹出你的弹窗实例,也支持你创建/删除等等对弹窗的远程控制。
  • docker-py :疯狂的 docker 工程接口的Python 包装。
  • dockerui :基于  docker 接口通过web 界面进行交互操作的工具。
  • django-docker :如果想知道怎么将Djnago 应用同 Docker 结合? 可以从这里学习。
  • diamond :Python 实现的守护进程,自动从你的服务或是其它指定数据源中提取数值,并 graphite 、 以及其它支持的 状态面板/收集系统输出。

九、Git

  • git-workflow :可视化你的 git 工作流程的工具,示例:  Demo 。
  • gitto :简洁的库,协助你建立自个儿的 git 主机。
  • git-imerge :git-imerge 能让 git 进行增量合并。 本质上是允许你在进行 imerge 有冲突时,有机会先合并掉,再继续。

十、邮件与聊天

  • mailbox :Mailbox 是对Python 的IMAP 一个人性化的再造。 基于简单即是美的态度,作者对 IMAP 接口给出了一个简单又好理解的形式。
  • deadchat :deadchat 旨在不安全的网络环境中提供安全的单一房间群聊服务以及客户端。
  • Mailpile :Mailpile 是针对邮件的索引及搜索引擎 。

十一、音频和视频

  • pms :穷人的  Spotify ,搜索和收集音乐流!
  • dejavu :在琢磨 Shazam 的原理? 音频指纹识别算法的Python实现在此!(译注: Shazam :是个神奇的音乐识别应用,对她啍个几秒调子,就能精确告诉你是什么歌曲、作者、歌词……)
  • HTPC-Manager :为 HTPC 粉丝准备的工具,提供了完备的界面来管理所有家庭媒体服务器上的好物。
  • cherrymusic :Python 实现的一个音乐流媒体服务器。 流化输出你的音乐到所有设备上。
  • moviepy :脚本化的电影剪辑包,切/串/插入标题等基本操作,几行就搞定!

十二、其它

  • emit :用 redis 为你的函式追加可订阅能力,很有趣。
  • zipline :Zipline 是种 很Pythonic 的交易算法库。
  • raspberry.io :Raspberry.io 是树莓派的社区实现。 刚刚发布,汇集了各种创意想法,有兴趣的话立即检出折腾吧。
  • NewsBlur :Google Reader 已经关张儿了,Newsblur 已经发布了有段日子了,开源的 RSS 阅读器,这绝对是应该首先体验的。
  • macropy :Macropy 是在 Python 中实现  macros 的库。 检出文档,参考所有功能,看怎么用上了。
  • mini :对编译器以及语言设计有兴趣的,一定要看看这个仓库,以及配套的录像!
  • parsimonious :Parsimonious 的目标 是最快的 arbitrary-lookahead 解析器。 用Python 实现,基本可用。
  • isso :Disqus 的开源替代,从demo 看很不错,而且提供了更好的隐私设置。
  • deaddrop :Deaddrop 能为新闻机构或是其它人 提供在线投递箱,详细信息参考其 github page 。
  • nude.py :裸体检测的Python 实现,是 node.js 的仿制。
  • kaptan : Kaptan 是你应用的配置管理器!
  • luigi :Luigi 帮你构建复杂的管道来完成批处理。
  • gramme :Gramme 以简单而优雅的方式,通过 UDP 接口对易失数据完成消息包装序列化。
  • q :为你的Python 程序提供快速而随性的日志。 有一系列帮手来追踪你的函式参数,并能在控制台快速交互式加载。
  • fuqit :来自伟大的  Zed Shaw 最新作品,fuqit 试图令你忘记 MVC 的经验,用全新的方式专注简洁一切。
  • simplicity :基于靠谱的  pydanny 将你的 新结构化文本 转换为 JSON 格式。
  • lassie :Lassie 允许你轻松的从网站检索出内容来。
  • paperwork :Paperwork 是个 OCR 文档并完成可搜索转化的工具,用GTK/Glade实现了友好的界面。
  • cheat :cheat 允许你创建并查阅命令行上的交互式备忘。设计目的是帮助 *nix 的系统管理员们在习惯的环境中,快速调阅不易记忆的常用命令。
  • cookiecutter :良心模块! 提供一堆有用但是不常写,所以记不下来的代码模板,也支持自制代码模板。
  • pydown :支持用Python构建亮丽的HTML5 效果幻灯, Demo 。
  • Ice :模拟器粉丝们现在能用 Ice 向  Steam 里塞 ROM 来玩了。
  • pants :用以编写异步网络应用的轻量级框架。 Pants 是单线程,回调服务,也包含支持Websockets 的 HTTP 服务、WSGI支持和一个简单的web 框架。
  • pipeless :Pipeless 是一个构建简单  数据管道 的框架。
  • marshmallow :marshmallow 是个 ORM 无关的库,能将复杂的数据类型转换为Python 原生类型对象,以便容易的转换为JSON 提供接口使用。
  • twosheds :Python 实现的库,用来构造命令或是shell 解释器。Twosheds 让你用 Python 来定制自个儿的 shell 环境。
原文: Pycoder Weekly  / 编译: 蟒周刊