Python家族全家福,看你到底有多少熟人?

包管理

管理包和依赖的工具。

  • pip – Python 包和依赖关系管理工具。
  • pip-tools – 保证 Python 包依赖关系更新的一组工具。
  • conda – 跨平台,Python 二进制包管理工具。
  • Curdling – 管理 Python 包的命令行工具。
  • wheel – Python 分发的新标准,意在取代 eggs。

文本处理

用于解析和操作文本的库。

  • 通用
    • chardet – 字符编码检测器,兼容 Python2 和 Python3。
    • difflib – (Python 标准库)帮助我们进行差异化比较。
    • ftfy – 让Unicode文本更完整更连贯。
    • fuzzywuzzy – 模糊字符串匹配。
    • Levenshtein – 快速计算编辑距离以及字符串的相似度。
    • pangu.py – 在中日韩语字符和数字字母之间添加空格。
    • pyfiglet -figlet 的 Python实现。
    • shortuuid – 一个生成器库,用以生成简洁的,明白的,URL 安全的 UUID。
    • unidecode – Unicode 文本的 ASCII 转换形式 。
    • uniout – 打印可读的字符,而不是转义的字符串。
    • xpinyin – 一个用于把汉字转换为拼音的库。
  • Slug化
    • awesome-slugify – 一个 Python slug 化库,可以保持 Unicode。
    • python-slugify – Python slug 化库,可以把 unicode 转化为 ASCII。
    • unicode-slugify – 一个 slug 工具,可以生成 unicode slugs ,需要依赖 Django 。
  • 解析器
    • phonenumbers – 解析,格式化,储存,验证电话号码。
    • PLY – lex 和 yacc 解析工具的 Python 实现。
    • Pygments – 通用语法高亮工具。
    • pyparsing – 生成通用解析器的框架。
    • python-nameparser – 把一个人名分解为几个独立的部分。
    • python-user-agents – 浏览器 user agent 解析器。
    • sqlparse – 一个无验证的 SQL 解析器。

自然语言处理

用来处理人类语言的库。

  • NLTK – 一个先进的平台,用以构建处理人类语言数据的 Python 程序。
  • jieba – 中文分词工具。
  • langid.py – 独立的语言识别系统。
  • Pattern – Python 网络信息挖掘模块。
  • SnowNLP – 一个用来处理中文文本的库。
  • TextBlob – 为进行普通自然语言处理任务提供一致的 API。
  • TextGrocery – 一简单高效的短文本分类工具,基于 LibLinear 和 Jieba。

图像处理

用来操作图像的库.

  • pillow – Pillow 是一个更加易用版的 PIL。
  • hmap – 图像直方图映射。
  • imgSeek – 一个使用视觉相似性搜索一组图片集合的项目。
  • nude.py – 裸体检测。
  • pyBarcode – 不借助 PIL 库在 Python 程序中生成条形码。
  • pygram – 类似 Instagram 的图像滤镜。
  • python-qrcode – 一个纯 Python 实现的二维码生成器。
  • Quads – 基于四叉树的计算机艺术。
  • scikit-image – 一个用于(科学)图像处理的 Python 库。
  • thumbor – 一个小型图像服务,具有剪裁,尺寸重设和翻转功能。
  • wand – MagickWand的Python 绑定。MagickWand 是 ImageMagick的 C API 。

HTTP

使用HTTP的库。

  • requests – 人性化的HTTP请求库。
  • grequests – requests 库 + gevent ,用于异步 HTTP 请求.
  • httplib2 – 全面的 HTTP 客户端库。
  • treq – 类似 requests 的Python API 构建于 Twisted HTTP 客户端之上。
  • urllib3 – 一个具有线程安全连接池,支持文件 post,清晰友好的 HTTP 库。

数据库

Python实现的数据库。

  • pickleDB – 一个简单,轻量级键值储存数据库。
  • PipelineDB – 流式 SQL 数据库。
  • TinyDB – 一个微型的,面向文档型数据库。
  • ZODB – 一个 Python 原生对象数据库。一个键值和对象图数据库。

Web 框架

全栈 web 框架。

  • Django – Python 界最流行的 web 框架。
    • awesome-django系列
  • Flask – 一个 Python 微型框架。
    • awesome-flask系列
  • Pyramid – 一个小巧,快速,接地气的开源Python web 框架。
    • awesome-pyramid系列
  • Bottle – 一个快速小巧,轻量级的 WSGI 微型 web 框架。
  • CherryPy – 一个极简的 Python web 框架,服从 HTTP/1.1 协议且具有WSGI 线程池。
  • TurboGears – 一个可以扩展为全栈解决方案的微型框架。
  • web.py – 一个 Python 的 web 框架,既简单,又强大。
  • web2py – 一个全栈 web 框架和平台,专注于简单易用。
  • Tornado – 一个web 框架和异步网络库。

CMS

内容管理系统

  • django-cms – 一个开源的,企业级 CMS,基于 Django。
  • djedi-cms – 一个轻量级但却非常强大的 Django CMS ,考虑到了插件,内联编辑以及性能。
  • FeinCMS – 基于 Django 构建的最先进的内容管理系统之一。
  • Kotti – 一个高级的,Python 范的 web 应用框架,基于 Pyramid 构建。
  • Mezzanine – 一个强大的,持续的,灵活的内容管理平台。
  • Opps – 一个为杂志,报纸网站以及大流量门户网站设计的 CMS 平台,基于 Django。
  • Plone – 一个构建于开源应用服务器 Zope 之上的 CMS。
  • Quokka – 灵活,可扩展的小型 CMS,基于 Flask 和 MongoDB。
  • Wagtail – 一个 Django 内容管理系统。
  • Widgy – 最新的 CMS 框架,基于 Django。

电子商务

用于电子商务以及支付的框架和库。

  • django-oscar – 一个用于 Django 的开源的电子商务框架。
  • django-shop – 一个基于 Django 的店铺系统。
  • Cartridge – 一个基于 Mezzanine 构建的购物车应用。
  • shoop – 一个基于 Django 的开源电子商务平台。
  • alipay – 非官方的 Python 支付宝 API。
  • merchant – 一个可以接收来自多种支付平台支付的 Django 应用。
  • money – 货币类库with optional CLDR-backed locale-aware formatting and an extensible currency exchange solution.
  • python-currencies – 显示货币格式以及它的数值。

电子邮件

用来发送和解析电子邮件的库。

  • django-celery-ses – 带有 AWS SES 和 Celery 的 Django email 后端。
  • envelopes – 供人类使用的电子邮件库。
  • flanker – 一个 email 地址和 Mime 解析库。
  • imbox – Python IMAP 库
  • inbox.py – Python SMTP 服务器。
  • inbox – 一个开源电子邮件工具箱。
  • lamson – Python 风格的 SMTP 应用服务器。
  • mailjet – Mailjet API 实现,用来提供批量发送邮件,统计等功能。
  • marrow.mailer – 高性能可扩展邮件分发框架。
  • modoboa – 一个邮件托管和管理平台,具有现代的、简约的 Web UI。
  • pyzmail – 创建,发送和解析电子邮件。
  • Talon – Mailgun 库,用来抽取信息和签名。

网络站点爬取

爬取网络站点的库

  • Scrapy – 一个快速高级的屏幕爬取及网页采集框架。
  • cola – 一个分布式爬虫框架。
  • Demiurge – 基于PyQuery 的爬虫微型框架。
  • feedparser – 通用 feed 解析器。
  • Grab – 站点爬取框架。
  • MechanicalSoup – 用于自动和网络站点交互的 Python 库。
  • portia – Scrapy 可视化爬取。
  • pyspider – 一个强大的爬虫系统。
  • RoboBrowser – 一个简单的,Python 风格的库,用来浏览网站,而不需要一个独立安装的浏览器。

网页内容提取

用于进行网页内容提取的库。

  • Haul – 一个可以扩展的图像爬取工具。
  • html2text – 将 HTML 转换为 Markdown 格式文本
  • lassie – 人性化的网页内容检索库。
  • micawber -一个小型网页内容提取库,用来从 URLs 提取富内容。
  • newspaper – 使用 Python 进行新闻提取,文章提取以及内容策展。
  • opengraph – 一个用来解析开放内容协议(Open Graph Protocol)的 Python模块。
  • python-goose – HTML内容/文章提取器。
  • python-readability– arc90 公司 readability 工具的 Python 高速端口
  • sanitize – 为杂乱的数据世界带来调理性。
  • sumy – 一个为文本文件和 HTML 页面进行自动摘要的模块。
  • textract – 从任何格式的文档中提取文本,Word,PowerPoint,PDFs 等等。

表单

进行表单操作的库。

  • Deform – Python HTML 表单生成库,受到了 formish 表单生成库的启发。
  • django-bootstrap3– 集成了 Bootstrap 3 的 Django。
  • django-crispy-forms – 一个 Django 应用,他可以让你以一种非常优雅且 DRY(Don’t repeat yourself) 的方式来创建美观的表单。
  • django-remote-forms– 一个平台独立的 Django 表单序列化工具。
  • WTForms – 一个灵活的表单验证和呈现库。
  • WTForms-JSON– 一个 WTForms 扩展,用来处理 JSON 数据。

图形用户界面

用来创建图形用户界面程序的库。

  • curses – 内建的 ncurses 封装,用来创建终端图形用户界面。
  • enaml – 使用类似 QML 的Declaratic语法来创建美观的用户界面。
  • kivy – 一个用来创建自然用户交互(NUI)应用程序的库,可以运行在 Windows, Linux, Mac OS X, Android 以及 iOS平台上。
  • pyglet – 一个Python 的跨平台窗口及多媒体库。
  • PyQt – 跨平台用户界面框架 Qt 的 Python 绑定 ,支持Qt v4 和 Qt v5。
  • PySide – P跨平台用户界面框架 Qt 的 Python 绑定 ,支持Qt v4。
  • Tkinter – Tkinter 是 Python GUI 的一个事实标准库。
  • Toga – 一个 Python 原生的, 操作系统原生的 GUI 工具包。
  • urwid – 一个用来创建终端 GUI 应用的库,支持组件,事件和丰富的色彩等。
  • wxPython – wxPython 是 wxWidgets C++ 类库和 Python 语言混合的产物。
  • PyGObject – GLib/GObject/GIO/GTK+ (GTK+3) 的 Python 绑定
  • Flexx – Flexx 是一个纯 Python 语言编写的用来创建 GUI 程序的工具集,它使用 web 技术进行界面的展示。

游戏开发

超赞的游戏开发库。

  • Cocos2d – cocos2d 是一个用来开发 2D 游戏, 示例和其他图形/交互应用的框架。基于 pyglet。
  • Panda3D – 由迪士尼开发的 3D 游戏引擎,并由卡内基梅陇娱乐技术中心负责维护。使用C++编写, 针对 Python 进行了完全的封装。
  • Pygame – Pygame 是一组 Python 模块,用来编写游戏。
  • PyOgre – Ogre 3D 渲染引擎的 Python 绑定,可以用来开发游戏和仿真程序等任何 3D 应用。
  • PyOpenGL – OpenGL 的 Python 绑定及其相关 APIs。
  • PySDL2 – SDL2 库的封装,基于 ctypes。
  • RenPy – 一个视觉小说(visual novel)引擎。

Science and Data Analysis

用来进行科学计算和数据分析的库。

  • astropy – 一个天文学 Python 库。
  • bcbio-nextgen – 这个工具箱为全自动高通量测序分析提供符合最佳实践的处理流程。
  • bccb – 生物分析相关代码集合
  • Biopython – Biopython 是一组可以免费使用的用来进行生物计算的工具。
  • blaze – NumPy 和 Pandas 的大数据接口。
  • cclib – 一个用来解析和解释计算化学软件包输出结果的库。
  • NetworkX – 一个为复杂网络设计的高性能软件。
  • Neupy – 执行和测试各种不同的人工神经网络算法。
  • Numba – Python JIT (just in time) 编译器,针对科学用的 Python ,由Cython 和 NumPy 的开发者开发。
  • NumPy – 使用 Python 进行科学计算的基础包。
  • Open Babel – 一个化学工具箱,用来描述多种化学数据。
  • Open Mining – 使用 Python 挖掘商业情报 (BI) (Pandas web 接口)。
  • orange – 通过可视化编程或 Python 脚本进行数据挖掘,数据可视化,分析和机器学习。
  • Pandas – 提供高性能,易用的数据结构和数据分析工具。
  • PyDy – PyDy 是 Python Dynamics 的缩写,用来为动力学运动建模工作流程提供帮助, 基于 NumPy, SciPy, IPython 和 matplotlib。
  • PyMC – 马尔科夫链蒙特卡洛采样工具。
  • RDKit – 化学信息学和机器学习软件。
  • SciPy – 由一些基于 Python ,用于数学,科学和工程的开源软件构成的生态系统。
  • statsmodels – 统计建模和计量经济学。
  • SymPy – 一个用于符号数学的 Python 库。
  • zipline – 一个 Python 算法交易库。

数据可视化

进行数据可视化的库。 参见: awesome-javascript。

  • matplotlib – 一个 Python 2D 绘图库。
  • bokeh – 用 Python 进行交互式 web 绘图。
  • ggplot – ggplot2 给 R 提供的 API 的 Python 版本。
  • plotly – 协同 Python 和 matplotlib 工作的 web 绘图库。
  • pygal – 一个 Python SVG 图表创建工具。
  • pygraphviz – Graphviz 的 Python 接口。
  • PyQtGraph – 交互式实时2D/3D/图像绘制及科学/工程学组件。
  • SnakeViz – 一个基于浏览器的 Python’s cProfile 模块输出结果查看工具。
  • vincent – 把 Python 转换为 Vega 语法的转换工具。
  • VisPy – 基于 OpenGL 的高性能科学可视化工具。

计算机视觉

计算机视觉库。

  • OpenCV – 开源计算机视觉库。
  • SimpleCV – 一个用来创建计算机视觉应用的开源框架。

机器学习

机器学习库。 参见: awesome-machine-learning.

  • Crab – 灵活、快速的推荐引擎。
  • gensim – 人性化的话题建模库。
  • hebel – GPU 加速的深度学习库。
  • NuPIC – 智能计算 Numenta 平台。
  • pattern – Python 网络挖掘模块。
  • PyBrain – 另一个 Python 机器学习库。
  • Pylearn2 – 一个基于 Theano 的机器学习库。
  • python-recsys – 一个用来实现推荐系统的 Python 库。
  • scikit-learn – 基于 SciPy 构建的机器学习 Python 模块。
  • pydeep – Python 深度学习库。
  • vowpalporpoise – 轻量级 Vowpal Wabbit 的 Python 封装。
  • skflow – 一个 TensorFlow 的简化接口(模仿 scikit-learn)。

MapReduce

MapReduce 框架和库。

  • dpark – Spark 的 Python 克隆版,一个类似 MapReduce 的框架。
  • dumbo – 这个 Python 模块可以让人轻松的编写和运行 Hadoop 程序。
  • luigi – 这个模块帮你构建批处理作业的复杂流水线。
  • mrjob – 在 Hadoop 或 Amazon Web Services 上运行 MapReduce 任务。
  • PySpark – Spark 的 Python API 。
  • streamparse – 运行针对事实数据流的 Python 代码。集成了Apache Storm。

编辑器插件

编辑器和 IDE 的插件

  • Emacs
    • Elpy – Emacs Python 开发环境。
  • Sublime Text
    • SublimeJEDI – 一个 Sublime Text 插件,用来使用超赞的自动补全库 Jedi。
    • Anaconda – Anaconda 把你的 Sublime Text 3 变成一个功能齐全的 Python IDE。
  • Vim
    • YouCompleteMe – 引入基于 Jedi 的 Python 自动补全引擎。
    • Jedi-vim – 绑定 Vim 和 Jedi 自动补全库对 Python 进行自动补全。
    • Python-mode – 将 Vim 变成 Python IDE 的一款多合一插件。
  • Visual Studio
    • PTVS – Visual Studio 的 Python 工具

集成开发环境

流行的 Python 集成开发环境。

  • PyCharm – 商业化的 Python IDE ,由 JetBrains 开发。也有免费的社区版提供。
  • LiClipse – 基于 Eclipse 的免费多语言 IDE 。使用 PyDev 来支持 Python 。
  • Spyder – 开源 Python IDE。

Testing

进行代码库测试和生成测试数据的库。

  • 测试框架
    • unittest – (Python 标准库) 单元测试框架。
    • nose – nose 扩展了 unittest 的功能。
    • contexts – 一个 Python 3.3+ 的 BDD 框架。受到C# – Machine.Specifications的启发。
    • hypothesis – Hypothesis 是一个基于先进的 Quickcheck 风格特性的测试库。
    • mamba – Python 的终极测试工具, 拥护BDD。
    • PyAutoGUI – PyAutoGUI 是一个人性化的跨平台 GUI 自动测试模块。
    • pyshould– Should 风格的断言,基于 PyHamcrest。
    • pytest– 一个成熟的全功能 Python 测试工具。
    • green– 干净,多彩的测试工具。
    • pyvows– BDD 风格的测试工具,受Vows.js的启发。
    • Robot Framework – 一个通用的自动化测试框架。
  • Web 测试
    • Selenium – Selenium WebDriver 的 Python 绑定。
    • locust – 使用 Python 编写的,可扩展的用户加载测试工具。
    • sixpack – 一个和语言无关的 A/B 测试框架。
    • splinter – 开源的 web 应用测试工具。
  • Mock测试
    • mock – (Python 标准库) 一个用于伪造测试的库。
    • doublex – Python 的一个功能强大的 doubles 测试框架。
    • freezegun – 通过伪造日期模块来生成不同的时间。
    • httmock – 针对 Python 2.6+ 和 3.2+ 生成 伪造请求的库。
    • httpretty – Python 的 HTTP 请求 mock 工具。
    • responses – 伪造 Python 中的 requests 库的一个通用库。
    • VCR.py – 在你的测试中记录和重放 HTTP 交互。
  • 对象工厂
    • factoryboy – 一个 Python 用的测试固件 (test fixtures) 替代库。
    • mixer – 另外一个测试固件 (test fixtures) 替代库,支持 Django, Flask, SQLAlchemy, Peewee 等。
    • modelmommy – 为 Django 测试创建随机固件
  • 代码覆盖率
    • coverage – 代码覆盖率测量。
  • 伪数据
    • faker – 一个 Python 库,用来生成伪数据。
    • fake2db – 伪数据库生成器。
    • radar – 生成随机的日期/时间。
  • 错误处理
    • FuckIt.py – FuckIt.py 使用最先进的技术来保证你的 Python 代码无论对错都能继续运行。

原文发布于微信公众号 - IT派(it_pai)

原文发表时间:2018-03-13

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏何俊林

性能比肩美拍秒拍的Android视频录制编辑特效解决方案

众所周知,Android平台开发分为Java层和C++层,即Android SDK和Android NDK。常规产品功能只需要涉及到Java层即可,除非特殊需要...

2211
来自专栏ImportSource

必懂的NoSQL理论-Map-Reduce(上)

本文主要内容:基本的Map-Reduce Map-Reduce 基本原理 面向聚合的数据库能够兴起很大一部分原因是由于集群的增长。数据库运行在集群环境中意...

36010
来自专栏Kirito的技术分享

天池中间件大赛百万队列存储设计总结【复赛】

维持了 20 天的复赛终于告一段落了,国际惯例先说结果,复赛结果不太理想,一度从第 10 名掉到了最后的第 36 名,主要是写入的优化卡了 5 天,一直没有进展...

2193
来自专栏编程微刊

2018上半年GitHub上最热门的开源项目

7316
来自专栏美团技术团队

美团外卖Android Crash治理之路

Crash率是衡量一个App好坏的重要指标之一。如果你忽略了它的存在,它就会得寸进尺,愈演愈烈,最后造成大量用户的流失,进而给公司带来无法估量的损失。本文讲述美...

2372
来自专栏QQ音乐技术团队的专栏

OpenSL ES那些事

本次分享主要是将JNI层的声音采集,传输以及播放过程做相应介绍,若是大家有更好的优化建议,欢迎指教。

2.3K7
来自专栏牛客网

爱奇艺面经,Java后台开发

1,介绍下快排和归并各自的思路,优缺点 (讲了讲思路,然后说了下稳定性,最坏情况复杂度)知道Java里面的sort是哪种实现吗?(不知道,和面试官说了说Cpp里...

40915
来自专栏微信公众号:Java团长

不可多得的后端架构师技术图谱!内附参考资料!

由于知识点众多,特整理在GitHub上,微信外链限制,无法在文本中直接加上超链接,有需要的欢迎Start/Fork,地址如下:

1392
来自专栏FreeBuf

逆向华为路由器第三部分

引文 在前面两个部分(1,2)已经介绍了UART,BusyBox等部分的逆向调试,而这篇将会开始在流量分析方面下手,来逆向出更多的信息。 正文 请看下图,数据存...

2048
来自专栏吉浦迅科技

DAY49:阅读Arithmetic Functions和Bitwise Functions

reads the 32-bit or 64-bit word old located at the address address in global or...

1223

扫码关注云+社区

领取腾讯云代金券