当前位置:   article > 正文

awesome-python

awesome-python

精选的 Python 框架、库、软件和资源列表。

灵感来自awesome-php


管理面板

管理界面库。

  • ajenti - 您的服务器应得的管理面板。
  • django-grappelli - Django 管理界面的爵士皮肤。
  • django-jet - 具有改进功能的 Django 管理界面的现代响应模板。
  • django-suit - 替代 Django 管理界面(仅免费用于非商业用途)。
  • django-xadmin - Django admin 的直接替换有很多好东西。
  • flask-admin - Flask 的简单且可扩展的管理界面框架。
  • flower - Celery 的实时监控器和 Web 管理员.
  • jet-bridge - 适用于任何具有漂亮 UI 的应用程序的管理面板框架(例如 Jet Django)。
  • wooey - 一个为 Python 脚本创建自动 Web UI 的 Django 应用程序。

算法和设计模式

数据结构、算法和设计模式的Python实现。另请参阅awesome-algorithms

  • 算法
  • 设计模式
    • PyPattyrn - 用于实现常见设计模式的简单而有效的库。
    • python-patterns - Python 中的设计模式集合。
    • transitions - 轻量级、面向对象的有限状态机实现。

ASGI 服务器

ASGI兼容的网络服务器。

  • daphne - 用于 ASGI 和 ASGI-HTTP 的 HTTP、HTTP2 和 WebSocket 协议服务器。
  • uvicorn - 使用 uvloop 和 httptools 的闪电般快速的 ASGI 服务器实现。

异步编程

  • asyncio -(Python 标准库)异步 I/O、事件循环、协程和任务。
  • trio - 用于异步并发和 I/O 的友好库。
  • Twisted - 一个事件驱动的网络引擎。
  • uvloop - 超快速异步事件循环。

声音的

用于处理音频及其元数据的库。

  • 声音的
    • audioread - 跨库(GStreamer + Core Audio + MAD + FFmpeg)音频解码。
    • audioFlux - 用于音频和音乐分析、特征提取的库。
    • dejavu - 音频指纹识别和识别。
    • kapre -Keras 音频预处理器。
    • librosa - 用于音频和音乐分析的 Python 库。
    • matchering - 一个用于自动参考音频母带处理的库。
    • mingus - 具有 MIDI 文件和回放支持的高级音乐理论和符号包。
    • pyAudioAnalysis - 音频特征提取、分类、分割和应用。
    • pydub - 使用简单易用的高级界面处理音频。
    • TimeSide - 开放式网络音频处理框架。
  • 元数据
    • beets - 音乐库管理器和MusicBrainz标记器。
    • eyeD3 - 一种处理音频文件的工具,特别是包含 ID3 元数据的 MP3 文件。
    • mutagen - 一个处理音频元数据的 Python 模块。
    • tinytag - 用于读取 MP3、OGG、FLAC 和 Wave 文件的音乐元数据的库。

验证

用于实施身份验证方案的库。

  • OAuth
    • authlib - JavaScript 对象签名和加密草案实施。
    • django-allauth - “正常工作”的 Django 身份验证应用程序。
    • django-oauth-toolkit - Django 的 OAuth 2 好东西。
    • oauthlib - OAuth 请求签名逻辑的通用且彻底的实现。
    • python-oauth2 - 一个经过全面测试的抽象接口,用于创建 OAuth 客户端和服务器。
    • python-social-auth - 一种易于设置的社交身份验证机制。
  • 智威汤逊
    • pyjwt -Python 中的 JSON Web 令牌实现。
    • python-jose - Python 中的 JOSE 实现。
    • python-jwt - 用于生成和验证 JSON Web 令牌的模块。

构建工具

从源代码编译软件。

  • BitBake - 用于嵌入式 Linux 的类似 make 的构建工具。
  • buildout - 一个构建系统,用于从多个部分创建、组装和部署应用程序。
  • PlatformIO - 一个控制台工具,用于使用不同的开发平台构建代码。
  • pybuilder - 用纯 Python 编写的连续构建工具。
  • SCons - 一种软件构建工具。

内置类增强

用于增强 Python 内置类的库。

  • attrs - 替换类定义中的__init____eq____repr__等样板文件。
  • bidict - 高效的 Pythonic 双向地图数据结构和相关功能..
  • Box - 具有高级点符号访问权限的 Python 词典。
  • dataclasses -(Python 标准库)数据类。
  • DottedDict - 一个库,它提供了一种使用点路径表示法访问列表和字典的方法。

内容管理系统

内容管理系统。

  • django-cms - 基于 Django 的开源企业 CMS。
  • feincms - 基于 Django 构建的最先进的内容管理系统之一。
  • indico - 一个功能丰富的事件管理系统,由@ CERN制作。
  • Kotti - 基于 Pyramid 构建的高级 Pythonic Web 应用程序框架。
  • 夹层- 一个强大、一致且灵活的内容管理平台。
  • plone - 一个建立在开源应用服务器 Zope 之上的 CMS。
  • quokka - 由 Flask 和 MongoDB 提供支持的灵活、可扩展的小型 CMS。
  • wagtail - Django 内容管理系统。

缓存

用于缓存数据的库。

  • beaker - 用于会话和缓存的 WSGI 中间件。
  • django-cache-machine - Django 模型的自动缓存和失效。
  • django-cacheops - 一个灵活的 ORM 缓存,具有自动粒度事件驱动的失效。
  • dogpile.cache - dogpile.cache 是同一作者制作的 Beaker 的下一代替代品。
  • HermesCache - 具有基于标签的失效和 dogpile 效应预防的 Python 缓存库。
  • pylibmc - 围绕libmemcached接口的Python 包装器。
  • python-diskcache - SQLite 和文件支持的缓存后端,具有比 memcached 和 redis 更快的查找速度。

ChatOps 工具

用于聊天机器人开发的库。

  • errbot - 实现 ChatOps 的最简单和最受欢迎的聊天机器人。

代码分析

静态分析工具、linters 和代码质量检查器。另见awesome-static-analysis

  • 代码分析
    • coala - 独立于语言且易于扩展的代码分析应用程序。
    • code2flow - 将您的 Python 和 JavaScript 代码转换为 DOT 流程图。
    • prospector - 一种分析 Python 代码的工具。
    • pycallgraph - 一个可视化 Python 应用程序流(调用图)的库。
    • vulture - 一种用于查找和分析死 Python 代码的工具。
  • 代码短绒
  • 代码格式化程序
    • black - 不妥协的 Python 代码格式化程序。
    • isort - 用于对导入进行排序的 Python 实用程序/库。
    • yapf - 来自谷歌的另一个 Python 代码格式化程序。
  • 静态类型检查器,另见awesome-python-typing
    • mypy - 在编译时检查变量类型。
    • pyre-check - 高性能类型检查。
    • typeshed - Python 库存根的集合,具有静态类型。
  • 静态类型注释生成器
    • MonkeyType - 一个用于 Python 的系统,它通过收集运行时类型来生成静态类型注释。
    • pytype - Pytype 检查并推断 Python 代码的类型 - 不需要类型注释。

命令行界面开发

用于构建命令行应用程序的库。

  • 命令行应用程序开发
    • cement - Python 的 CLI 应用程序框架。
    • click - 一个以可组合的方式创建漂亮的命令行界面的包。
    • cliff - 用于创建具有多级命令的命令行程序的框架。
    • docopt - Pythonic 命令行参数解析器。
    • python-fire - 一个用于从任何 Python 对象创建命令行界面的库。
    • python-prompt-toolkit - 用于构建强大的交互式命令行的库。
  • 终端效果图
    • alive-progress - 一种新型的进度条,具有实时吞吐量、eta 和非常酷的动画。
    • asciimatics - 用于创建全屏文本 UI(从交互式表单到 ASCII 动画)的包。
    • bashplotlib - 在终端中制作基本图。
    • colorama - 跨平台彩色终端文本。
    • rich - 用于终端中富文本和漂亮格式的 Python 库。还提供了一个很棒的RichHandler日志处理程序。
    • tqdm - 用于循环和 CLI 的快速、可扩展的进度条。

命令行工具

有用的基于 CLI 的生产力工具。

  • 生产力工具
    • copier - 用于呈现项目模板的库和命令行实用程序。
    • cookiecutter - 从 cookiecutters(项目模板)创建项目的命令行实用程序。
    • doitlive - 在终端中进行实时演示的工具。
    • howdoi - 通过命令行即时编码答案。
    • Invoke - 一种用于管理面向 shell 的子进程并将可执行 Python 代码组织到 CLI 可调用任务中的工具。
    • PathPicker - 从 bash 输出中选择文件。
    • percol - 为 UNIX 上的传统管道概念添加交互式选择的风格。
    • thefuck - 更正您之前的控制台命令。
    • tmuxp - 一个tmux会话管理器。
    • try - 一个非常简单的 CLI 来试用 python 包 - 它从未如此简单。
  • CLI 增强功能
    • httpie - 命令行 HTTP 客户端,用户友好的 cURL 替代品。
    • iredis - 具有自动完成和语法突出显示功能的 Redis CLI。
    • kube-shell - 用于使用 Kubernetes CLI 的集成 shell。
    • litecli - 具有自动完成和语法突出显示功能的 SQLite CLI。
    • mycli - 具有自动完成和语法高亮显示的 MySQL CLI。
    • pgcli - 具有自动完成和语法突出显示功能的 PostgreSQL CLI。
    • saws - 增压aws-cli

兼容性

用于从 Python 2 迁移到 3 的库。

  • python-future - Python 2 和 Python 3 之间缺少的兼容层。
  • 现代化- 为最终的 Python 3 迁移对 Python 代码进行现代化改造。
  • - Python 2 和 3 兼容性实用程序。

计算机视觉

计算机视觉库。

并发和并行

用于并发和并行执行的库。另见awesome-asyncio

配置

用于存储和解析配置选项的库。

  • configobj - 带验证的 INI 文件解析器。
  • configparser -(Python 标准库)INI 文件解析器。
  • hydra - Hydra 是一个用于优雅地配置复杂应用程序的框架。
  • profig - 通过值转换从多种格式进行配置。
  • python-decouple - 设置与代码的严格分离。

密码学

  • cryptography - 一个旨在向 Python 开发人员公开加密原语和配方的包。
  • paramiko - 领先的原生 Python SSHv2 协议库。
  • passlib - 安全密码存储/哈希库,非常高级别。
  • pynacl - Python 绑定到网络和密码学 (NaCl) 库。

数据分析

用于数据分析的库。

  • AWS Data Wrangler - AWS 上的 Pandas。
  • Blaze -NumPy 和 Pandas 与大数据的接口.
  • Open Mining - Pandas 界面中的商业智能 (BI)。
  • Optimus - 使用 PySpark 轻松实现敏捷数据科学工作流程.
  • Orange - 通过可视化编程或脚本进行数据挖掘、数据可视化、分析和机器学习。
  • Pandas - 一个提供高性能、易于使用的数据结构和数据分析工具的库。

数据验证

用于验证数据的库。在许多情况下用于表单。

数据可视化

用于可视化数据的库。另请参阅awesome-javascript

  • Altair - Python 的声明性统计可视化库。
  • Bokeh - 用于 Python 的交互式 Web 绘图。
  • bqplot - Jupyter Notebook 的交互式绘图库。
  • Cartopy - 具有 matplotlib 支持的制图 python 库。
  • Dash - 建立在 Flask、React 和 Plotly 之上,旨在分析 Web 应用程序。
  • 图表- 作为代码的图表。
  • Matplotlib - Python 二维绘图库。
  • plotnine - 基于 ggplot2 的 Python 图形语法。
  • Pygal - Python SVG 图表创建器。
  • PyGraphviz - Graphviz的 Python 接口。
  • PyQtGraph - 交互式实时 2D/3D/图像绘图和科学/工程小部件。
  • Seaborn - 使用 Matplotlib 的统计数据可视化。
  • VisPy - 基于 OpenGL 的高性能科学可视化。

数据库

用 Python 实现的数据库。

  • pickleDB - 用于 Python 的简单轻量级键值存储。
  • tinydb - 一个微型的、面向文档的数据库。
  • ZODB - Python 的本机对象数据库。键值和对象图数据库。

数据库驱动程序

用于连接和操作数据库的库。

日期和时间

用于处理日期和时间的库。

  • Arrow - 一个 Python 库,它提供了一种明智且人性化的方法来创建、操作、格式化和转换日期、时间和时间戳。
  • Chronyk - 用于解析人工编写的时间和日期的 Python 3 库。
  • dateutil - 标准 Python日期时间模块的扩展。
  • delorean - 一个用于清除处理日期时间时出现的不便真相的库。
  • maya - 人类的约会时间。
  • moment - 用于处理日期/时间的 Python 库。受Moment.js启发。
  • Pendulum - Python 日期时间变得简单。
  • PyTime - 一个易于使用的 Python 模块,旨在通过字符串操作日期/时间/日期时间。
  • pytz - 世界时区定义,现代和历史。将tz 数据库引入 Python。
  • when.py - 提供用户友好的功能来帮助执行常见的日期和时间操作。

调试工具

用于调试代码的库。

  • 类 pdb 调试器
    • ipdb - 支持 IPython 的pdb
    • pdb++ - pdb 的另一个直接替代品。
    • pudb - 全屏、基于控制台的 Python 调试器。
    • wdb - 通过 WebSockets 的一个不太可能的网络调试器。
  • 追踪
    • lptrace - Python 程序的strace 。
    • manhole - 调试 UNIX 套接字连接并显示所有线程的堆栈跟踪和交互式提示。
    • pyringe - 能够附加到 Python 进程并将代码注入 Python 进程的调试器。
    • python-hunter - 一个灵活的代码跟踪工具包。
  • 剖析器
    • line_profiler - 逐行分析。
    • memory_profiler - 监控 Python 代码的内存使用情况。
    • py-spy - Python 程序的采样分析器。用 Rust 编写。
    • pyflame - Python 的 ptracing 分析器。
    • vprof - 可视化 Python 分析器。
  • 其他的

深度学习

神经网络和深度学习框架。另请参阅awesome-deep-learning

  • caffe - 一个用于深度学习的快速开放框架。
  • keras - 一个高级神经网络库,能够在 TensorFlow 或 Theano 之上运行。
  • mxnet - 专为提高效率和灵活性而设计的深度学习框架。
  • pytorch - 具有强大 GPU 加速功能的 Python 中的张量和动态神经网络。
  • SerpentAI - 游戏代理框架。使用任何视频游戏作为深度学习沙盒。
  • tensorflow - 谷歌创建的最受欢迎的深度学习框架。
  • Theano - 一个用于快速数值计算的库。

开发运营工具

DevOps 的软件和库。

  • 配置管理
    • ansible - 一个极其简单的 IT 自动化平台。
    • cloudinit - 一个多分发包,用于处理云实例的早期初始化。
    • OpenStack - 用于构建私有云和公共云的开源软件。
    • pyinfra - 用于自动化基础设施的通用 CLI 工具和 python 库。
    • saltstack - 基础设施自动化和管理系统。
  • SSH 式部署
    • cuisine - Fabric 的类似厨师的功能.
    • fabric - 用于远程执行和部署的简单 Pythonic 工具。
    • fabtools - 用于编写很棒的 Fabric 文件的工具。
  • 流程管理
  • 监控
    • psutil - 跨平台进程和系统实用程序模块。
  • 备份
    • BorgBackup - 具有压缩和加密功能的重复数据删除归档程序。
  • 其他的

分布式计算

分布式计算的框架和库。

  • 批量处理
    • dask - 用于分析计算的灵活并行计算库。
    • luigi - 一个模块,可帮助您构建批处理作业的复杂管道。
    • mrjob - 在 Hadoop 或 Amazon Web Services 上运行 MapReduce 作业。
    • PySpark -Apache Spark Python API。
    • Ray - 一个用于并行和分布式 Python 的系统,统一了机器学习生态系统。
  • 流处理

分配

为发布分发创建打包的可执行文件的库。

  • dh-virtualenv - 构建并分发 virtualenv 作为 Debian 包。
  • Nuitka - 将脚本、模块、包编译成可执行文件或扩展模块。
  • py2app - 冻结 Python 脚本 (Mac OS X).
  • py2exe - 冻结 Python 脚本 (Windows)。
  • pyarmor - 一种用于混淆 python 脚本、将混淆脚本绑定到固定机器或使混淆脚本过期的工具。
  • PyInstaller - 将 Python 程序转换为独立的可执行文件(跨平台)。
  • pynsist - 构建 Windows 安装程序的工具,安装程序捆绑 Python 本身。
  • shiv - 用于构建完全独立的 zipapps (PEP 441) 的命令行实用程序,但包含它们的所有依赖项。

文档

用于生成项目文档的库。

  • sphinx -Python 文档生成器。
  • pdoc - Epydoc 替代品,用于自动为 Python 库生成 API 文档。
  • pycco - 文学编程风格的文档生成器。

下载器

供下载的库。

  • akshare - 为人类打造的金融数据接口库!
  • s3cmd - 用于管理 Amazon S3 和 CloudFront 的命令行工具。
  • s4cmd - 超级 S3 命令行工具,有利于提高性能。
  • you-get - 用 Python 3 编写的 YouTube/Youku/Niconico 视频下载器。
  • youtube-dl - 一个从 YouTube 下载视频的小型命令行程序。

电子商务

电子商务和支付的框架和库。

  • 支付宝- 用于 Python 的非官方支付宝 API。
  • Cartridge - 使用 Mezzanine 构建的购物车应用程序。
  • django-oscar - Django 的开源电子商务框架。
  • django-shop - 基于 Django 的商店系统。
  • forex-python - 外汇汇率、比特币价格指数和货币换算。
  • merchant - 一个 Django 应用程序,用于接受来自各种支付处理器的付款。
  • money -Money具有可选的 CLDR 支持的区域设置感知格式和可扩展货币兑换的类。
  • python-currencies - 显示货币格式及其肮脏的货币。
  • saleor - 无头开源电子商务平台。
  • shoop - 基于 Django 的开源电子商务平台。

编辑器插件和 IDE

  • Emacs
    • elpy -Emacs Python 开发环境。
  • 崇高的文字
    • anaconda -Anaconda 在功能齐全的 Python 开发 IDE 中转换您的 Sublime Text 3.
    • SublimeJEDI - 很棒的自动完成库 Jedi 的 Sublime Text 插件.
  • 维姆
    • jedi-vim - 用于 Python 的 Jedi 自动完成库的 Vim 绑定。
    • python-mode - 一个将 Vim 变成 Python IDE 的一体化插件。
    • YouCompleteMe - 包括基于Jedi的 Python 完成引擎。
  • 视觉工作室
    • PTVS - 用于 Visual Studio 的 Python 工具。
  • 视觉工作室代码
    • Python - 对 Python 提供丰富支持的官方 VSCode 扩展。
  • 集成开发环境
    • PyCharm - JetBrains 的商业 Python IDE. 有免费的社区版。
    • spyder - 开源 Python IDE。

电子邮件

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

  • 邮件服务器
    • modoboa - 一个邮件托管和管理平台,包括现代 Web UI。
    • salmon - 一个 Python 邮件服务器。
  • 客户
    • imbox - 用于人类的 Python IMAP。
    • yagmail - 另一个 Gmail/SMTP 客户端。
  • 其他的
    • flanker - 电子邮件地址和 Mime 解析库。
    • mailer - 高性能可扩展邮件传递框架。

企业应用集成

用于企业环境中系统集成的平台和工具

  • Zato - ESB、SOA、REST、API 和 Python 中的云集成。

环境管理

用于 Python 版本和虚拟环境管理的库。

  • pyenv - 简单的 Python 版本管理。
  • virtualenv - 创建隔离 Python 环境的工具。

文件

用于文件操作和 MIME 类型检测的库。

  • mimetypes -(Python 标准库)将文件名映射到 MIME 类型。
  • path.py - os.path的模块包装器。
  • pathlib -(Python 标准库)跨平台、面向对象的路径库。
  • PyFilesystem2 - Python 的文件系统抽象层。
  • python-magic - libmagic 文件类型识别库的 Python 接口。
  • Unipath - 一种面向对象的文件/目录操作方法。
  • watchdog - 用于监视文件系统事件的 API 和 shell 实用程序。

外部函数接口

提供外部函数接口的库。

  • cffi - Python 调用 C 代码的外部函数接口。
  • ctypes -(Python 标准库)Python 调用 C 代码的外部函数接口。
  • PyCUDA - Nvidia 的 CUDA API 的 Python 包装器。
  • SWIG - 简化的包装器和接口生成器。

形式

用于处理表单的库。

  • Deform - 受 formish 表单生成库影响的 Python HTML 表单生成库.
  • django-bootstrap3 - Bootstrap 3 与 Django 的集成。
  • django-bootstrap4 - Bootstrap 4 与 Django 的集成。
  • django-crispy-forms - 一个 Django 应用程序,可让您以非常优雅和 DRY 的方式创建漂亮的表单。
  • django-remote-forms - 独立于平台的 Django 表单序列化程序。
  • WTForms - 一个灵活的表单验证和渲染库。

函数式编程

使用 Python 进行函数式编程。

  • Coconut - 为简单、优雅、Pythonic 函数式编程而构建的 Python 变体。
  • CyToolz - Cython 实现Toolz:高性能功能实用程序。
  • fn.py - Python 中的函数式编程:实现缺少的功能以享受 FP。
  • funcy - 一个花哨实用的功能性工具。
  • more-itertools - 除了itertools.
  • returns - 一组类型安全的单子、转换器和组合实用程序。
  • Toolz - 用于迭代器、函数和字典的功能实用程序的集合。

界面开发

用于处理图形用户界面应用程序的库。

  • curses -用于创建终端 GUI 应用程序的ncurses的内置包装器。
  • Eel - 一个用于制作类似 Electron 的简单离线 HTML/JS GUI 应用程序的库。
  • enaml - 使用像 QML 这样的声明性语法创建漂亮的用户界面。
  • Flexx - Flexx 是一个用于创建 GUI 的纯 Python 工具包,它使用 Web 技术进行渲染.
  • Gooey - 用一行将命令行程序变成一个完整的 GUI 应用程序。
  • kivy - 用于创建 NUI 应用程序的库,可在 Windows、Linux、Mac OS X、Android 和 iOS 上运行。
  • pyglet - Python 的跨平台窗口和多媒体库。
  • PyGObject - GLib/GObject/GIO/GTK+ (GTK+3) 的 Python 绑定。
  • PyQt - Qt跨平台应用程序和 UI 框架的 Python 绑定。
  • PySimpleGUI - 用于 tkinter、Qt、WxPython 和 Remi 的包装器。
  • pywebview - 围绕 webview 组件的轻量级跨平台本机包装器。
  • Tkinter - Tkinter 是 Python 事实上的标准 GUI 包。
  • Toga - Python 原生、OS 原生 GUI 工具包。
  • urwid - 一个用于创建终端 GUI 应用程序的库,对小部件、事件、丰富的颜色等有强大的支持。
  • wxPython - wxWidgets C++ 类库与 Python 的混合。
  • DearPyGui - 一个简单的 GPU 加速 Python GUI 框架

图形QL

用于使用 GraphQL 的库。

  • graphene - Python 的 GraphQL 框架。
  • tartiflette-aiohttp -aiohttp基于 的包装器,用于 Tartiflette 通过 HTTP 公开 GraphQL API。
  • tartiflette-asgi - 对 Tartiflette GraphQL 引擎的 ASGI 支持.
  • tartiflette - 针对 Python 3.6+ 和 asyncio 的 SDL-first GraphQL 引擎实现。

游戏开发

很棒的游戏开发库。

  • Arcade -Arcade 是一个现代 Python 框架,用于制作具有引人入胜的图形和声音的游戏.
  • Cocos2d - cocos2d 是用于构建 2D 游戏、演示和其他图形/交互式应用程序的框架。
  • Harfang3D - 用于 3D、VR 和游戏开发的 Python 框架。
  • Panda3D - 迪士尼开发的 3D 游戏引擎。
  • Pygame - Pygame 是一组专为编写游戏而设计的 Python 模块。
  • PyOgre - Ogre 3D 渲染引擎的 Python 绑定,可用于游戏、模拟和任何 3D。
  • PyOpenGL - OpenGL 及其相关 API 的 Python ctypes 绑定。
  • PySDL2 - SDL2 库的基于 ctypes 的包装器。
  • RenPy - 视觉小说引擎。

地理定位

用于地理编码地址和处理纬度和经度的库。

  • django-countries - 一个为模型和表单提供国家字段的 Django 应用程序。
  • GeoDjango - 世界级的地理网络框架。
  • GeoIP - 用于 MaxMind GeoIP 遗留数据库的 Python API.
  • geojson -GeoJSON 的 Python 绑定和实用程序.
  • geopy -Python 地理编码工具箱。

HTML 操作

用于处理 HTML 和 XML 的库。

  • BeautifulSoup - 提供用于迭代、搜索和修改 HTML 或 XML 的 Pythonic 习惯用法。
  • bleach - 基于白名单的 HTML 清理和文本链接库。
  • cssutils - Python 的 CSS 库。
  • html5lib - 一个符合标准的库,用于解析和序列化 HTML 文档和片段。
  • lxml - 一个非常快速、易于使用且多功能的库,用于处理 HTML 和 XML。
  • MarkupSafe - 为 Python 实现 XML/HTML/XHTML 标记安全字符串。
  • pyquery - 一个用于解析 HTML 的类 jQuery 库。
  • untangle - 将 XML 文档转换为 Python 对象以便于访问。
  • WeasyPrint - 可导出为 PDF 的 HTML 和 CSS 可视化渲染引擎。
  • xmldataset - 简单的 XML 解析。
  • xmltodict - 使用 XML 就像使用 JSON 一样。

HTTP 客户端

用于处理 HTTP 的库。

  • grequests - 用于异步 HTTP 请求的请求 + gevent。
  • httplib2 - 全面的 HTTP 客户端库。
  • httpx - 用于 Python 的下一代 HTTP 客户端。
  • requests - 人类的 HTTP 请求。
  • treq - Python 请求,例如构建在 Twisted 的 HTTP 客户端之上的 API。
  • urllib3 - 一个 HTTP 库,具有线程安全连接池、文件发布支持、健全友好。

硬件

用于硬件编程的库。

  • ino - 用于与Arduino一起工作的命令行工具包。
  • keyboard - 在 Windows 和 Linux 上挂接和模拟全局键盘事件。
  • mouse - 在 Windows 和 Linux 上挂接和模拟全局鼠标事件。
  • Pingo -Pingo 提供统一的 API 来对 Raspberry Pi、pcDuino、Intel Galileo 等设备进行编程.
  • PyUserInput - 用于跨平台控制鼠标和键盘的模块。
  • scapy - 一个出色的数据包操作库。

图像处理

用于处理图像的库。

  • hmap - 图像直方图重新映射。
  • imgSeek - 一个使用视觉相似性搜索图像集合的项目。
  • nude.py - 裸体检测。
  • pagan - 基于输入字符串和哈希的复古标识(头像)生成。
  • pillow - Pillow 是友好的PIL叉子。
  • python-barcode - 在没有额外依赖的情况下在 Python 中创建条形码。
  • pygram - 类似 Instagram 的图像过滤器。
  • PyMatting - 用于 alpha 抠图的库。
  • python-qrcode - 纯 Python 二维码生成器。
  • pywal - 一种从图像生成配色方案的工具。
  • pyvips - 一个内存需求低的快速图像处理库。
  • Quads - 基于四叉树的计算机艺术。
  • scikit-image - 用于(科学)图像处理的 Python 库。
  • thumbor - 智能成像服务。它支持按需裁剪、调整大小和翻转图像。
  • wand - MagickWand的 Python 绑定,ImageMagick 的 C API.

实现

Python 的实现。

  • CLPython - 用 Common Lisp 编写的 Python 编程语言的实现。
  • CPython -默认,最广泛使用的 Python 编程语言的实现,用 C 编写。
  • Cython - 优化 Python 的静态编译器。
  • Grumpy - 作为更强大的 CPython2.7 替代品(alpha),编译器多于解释器。
  • IronPython - 用 C# 编写的 Python 编程语言的实现。
  • Jython - 用 Ja​​va 为 JVM 编写的 Python 编程语言的实现。
  • MicroPython - 一种精简高效的 Python 编程语言实现。
  • Numba - 针对科学 Python 的 LLVM 的 Python JIT 编译器。
  • PeachPy - 嵌入在 Python 中的 x86-64 汇编程序。
  • Pyjion - 基于 CoreCLR 的 Python JIT。
  • PyPy - 一种非常快速且兼容的 Python 语言实现。
  • Pyston - 使用 JIT 技术的 Python 实现。
  • Stackless Python - Python 编程语言的增强版本。

交互式口译员

交互式 Python 解释器 (REPL)。

国际化

使用 i18n 的库。

作业调度程序

用于调度作业的库。

  • Airflow - Airflow 是一个以编程方式创作、安排和监控工作流的平台。
  • APScheduler - 一个轻巧但功能强大的进程内任务调度程序,可让您安排功能。
  • django-schedule - Django 的日历应用程序。
  • doit - 任务运行器和构建工具。
  • gunnery - 用于具有基于 Web 界面的分布式系统的多用途任务执行工具。
  • Joblib - 一组在 Python 中提供轻量级流水线的工具。
  • 计划- 像魅力一样用 Python 编写 crontab 文件。
  • Prefect - 一种现代工作流编排框架,可以轻松构建、安排和监控强大的数据管道。
  • schedule - 人类的 Python 作业调度。
  • Spiff - 一个用纯 Python 实现的强大的工作流引擎。
  • TaskFlow - 一个 Python 库,有助于使任务执行变得简单、一致和可靠。

记录

用于生成和使用日志的库。

  • logbook - Python 的日志记录替换。
  • logging -(Python 标准库)Python 的日志记录工具。
  • loguru - 旨在为 Python 带来愉快日志记录的库。
  • sentry-python - 适用于 Python 的哨兵 SDK。
  • structlog - 结构化日志记录变得简单。

机器学习

机器学习库。另请参阅awesome-machine-learning

  • gym - 用于开发和比较强化学习算法的工具包。
  • H2O - 开源快速可扩展机器学习平台。
  • 指标- 机器学习评估指标。
  • NuPIC - 用于智能计算的 Numenta 平台。
  • scikit-learn - 最受欢迎的机器学习 Python 库。
  • Spark ML - Apache Spark的可扩展机器学习库。
  • vowpal_porpoise - Vowpal Wabbit的轻量级 Python 包装器。
  • xgboost - 一个可扩展的、可移植的、分布式的梯度提升库。
  • MindsDB - MindsDB 是现有数据库的开源 AI 层,可让您使用标准查询轻松开发、训练和部署最先进的机器学习模型。

微软Windows

Microsoft Windows 上的 Python 编程。

  • Python(x,y) - 基于 Qt 和 Spyder 的面向科学应用的 Python 发行版。
  • pythonlibs - 用于 Python 扩展包的非官方 Windows 二进制文件。
  • PythonNet - Python 与 .NET 公共语言运行时 (CLR) 的集成。
  • PyWin32 - Windows 的 Python 扩展。
  • WinPython - 适用于 Windows 7/8 的便携式开发环境。

各种各样的

不属于上述类别的有用库或工具。

  • blinker - 一个快速的 Python 进程内信号/事件调度系统。
  • boltons - 一组纯 Python 实用程序。
  • itsdangerous - 各种助手将可信数据传递到不受信任的环境。
  • magenta - 使用人工智能生成音乐和艺术的工具。
  • pluginbase - 一个简单但灵活的 Python 插件系统。
  • tryton - 通用业务框架。

自然语言处理

用于处理人类语言的库。

  • 一般的
    • gensim - 人类主题建模。
    • langid.py - 独立的语言识别系统。
    • nltk - 构建 Python 程序以处理人类语言数据的领先平台。
    • pattern - 一个网络挖掘模块。
    • polyglot - 支持数百种语言的自然语言管道。
    • pytext - 基于 PyTorch 的自然语言建模框架。
    • PyTorch-NLP - 一个工具包,支持快速深度学习 NLP 原型设计以用于研究。
    • spacy - 用于 Python 和 Cython 的工业级自然语言处理库。
    • Stanza - 斯坦福 NLP 集团的官方 Python 库,支持 60 多种语言.
  • 中国人
    • funNLP - 中文 NLP 工具和数据集的集合。
    • jieba - 最流行的中文文本分词库。
    • pkuseg-python - 用于各个领域中文分词的工具包。
    • snownlp - 一个处理中文文本的库。

网络虚拟化

用于虚拟网络和 SDN(软件定义网络)的工具和库。

  • mininet - 用 Python 编写的流行网络模拟器和 API。
  • napalm - 用于操纵网络设备的跨供应商 API。
  • pox - 基于 Python 的 SDN 控制应用程序,例如 OpenFlow SDN 控制器。

动态消息

用于构建用户活动的库。

对象关系管理

实现对象关系映射或数据映射技术的库。

  • 关系数据库
    • Django 模型- Django ORM.
    • SQLAlchemy - Python SQL 工具包和对象关系映射器。
    • 数据集- 将 Python 字典存储在数据库中 - 适用于 SQLite、MySQL 和 PostgreSQL。
    • orator - Orator ORM 提供了一个简单而漂亮的 ActiveRecord 实现。
    • orm - 异步 ORM。
    • peewee - 一个小巧、富有表现力的 ORM。
    • pony - 为 SQL 提供面向生成器的接口的 ORM。
    • pydal - 纯 Python 数据库抽象层。
  • NoSQL 数据库

包裹管理

用于包和依赖管理的库。

  • pip - Python 的包安装程序。
    • pip-tools - 一组工具,可让您固定的 Python 依赖项保持新鲜。
    • PyPI
  • conda - 跨平台、与 Python 无关的二进制包管理器。
  • poetry - Python 依赖管理和打包变得容易。

包存储库

本地 PyPI 存储库服务器和代理。

  • bandersnatch - 由 Python Packaging Authority (PyPA) 提供的 PyPI 镜像工具。
  • devpi - PyPI 服务器和打包/测试/发布工具。
  • localshop - 本地 PyPI 服务器(自定义包和 pypi 的自动镜像)。
  • warehouse - 下一代 Python 包存储库 (PyPI).

渗透测试

用于渗透测试的框架和工具。

  • fsociety - 渗透测试框架。
  • setoolkit - 用于社会工程的工具包。
  • sqlmap - 自动 SQL 注入和数据库接管工具。

权限

允许或拒绝用户访问数据或功能的库。

  • django-guardian - Django 1.2+ 的每个对象权限的实现
  • django-rules - 一个小巧但功能强大的应用程序,无需数据库即可为 Django 提供对象级权限。

进程

用于启动和与 OS 进程通信的库。

推荐系统

用于构建推荐系统的库。

  • annoy - C ++ / Python 中的近似最近邻居针对内存使用进行了优化.
  • fastFM - 分解机库。
  • implicit - 隐式数据集协同过滤的快速 Python 实现。
  • libffm - 用于场感知分解机 (FFM) 的库。
  • lightfm - 许多流行推荐算法的 Python 实现。
  • spotlight - 使用 PyTorch 的深度推荐模型。
  • Surprise - 用于构建和分析推荐系统的 scikit。
  • tensorrec - TensorFlow 中的推荐引擎框架。

重构

Python 的重构工具和库

  • Bicycle Repair Man - Bicycle Repair Man,Python 的重构工具。
  • Bowler - 现代 Python 的安全代码重构。
  • Rope -Rope 是一个 python 重构库。

REST风格的API

用于构建 RESTful API 的库。

  • 姜戈
  • 烧瓶
    • eve - 由 Flask、MongoDB 和善意支持的 REST API 框架.
    • flask-api - Flask 的可浏览 Web API。
    • flask-restful - 为 Flask 快速构建 REST API。
  • 金字塔
    • cornice - 金字塔的 RESTful 框架.
  • 框架无关
    • apistar - 为 Python 3 设计的智能 Web API 框架。
    • falcon - 用于构建云 API 和 Web 应用程序后端的高性能框架。
    • fastapi - 一种现代、快速的 Web 框架,用于基于标准 Python 类型提示使用 Python 3.6+ 构建 API。
    • hug - 一个用于干净地公开 API 的 Python 3 框架。
    • sandman2 - 用于现有数据库驱动系统的自动化 REST API。
    • sanic - 一个 Python 3.6+ 网络服务器和网络框架,专为快速运行而编写。
    • vibora - 受 Flask 启发的快速、高效和异步的 Web 框架。

机器人技术

机器人库。

  • PythonRobotics - 这是具有可视化的各种机器人算法的汇编。
  • rospy - 这是 ROS(机器人操作系统)的库。

RPC 服务器

RPC 兼容的服务器。

科学

科学计算库。另请参阅Python-for-Scientists

  • astropy - 一个用于天文学的社区 Python 库。
  • bcbio-nextgen - 为全自动高通量测序分析提供最佳实践流程。
  • bccb - 收集与生物分析相关的有用代码。
  • Biopython - Biopython 是一组免费提供的生物计算工具。
  • cclib - 用于解析和解释计算化学包结果的库。
  • Color - 实施全面的色彩理论转换和算法。
  • 空手道俱乐部- 用于图形结构化数据的无监督机器学习工具箱。
  • NetworkX - 用于复杂网络的高生产力软件。
  • NIPY - 神经影像学工具包的集合。
  • NumPy - 使用 Python 进行科学计算的基本包。
  • ObsPy - 用于地震学的 Python 工具箱。
  • Open Babel - 一个化学工具箱,旨在使用多种化学数据语言。
  • PyDy - Python Dynamics 的缩写,用于协助动态运动建模的工作流程。
  • PyMC - 马尔可夫链蒙特卡洛采样工具包。
  • QuTiP -Python 中的量子工具箱。
  • RDKit - 化学信息学和机器学习软件。
  • SciPy - 基于 Python 的数学、科学和工程开源软件生态系统。
  • SimPy - 基于过程的离散事件仿真框架。
  • statsmodels - Python 中的统计建模和计量经济学。
  • SymPy - 用于符号数学的 Python 库。
  • Zipline - Pythonic 算法交易库。

搜索

用于对数据建立索引和执行搜索查询的库和软件。

连载

用于序列化复杂数据类型的库

无服务器框架

用于开发无服务器 Python 代码的框架。

  • python-lambda - 用于在 AWS Lambda 中开发和部署 Python 代码的工具包。
  • Zappa - 用于在 AWS Lambda 和 API 网关上部署 WSGI 应用程序的工具。

基于 Python 的 Shell。

  • xonsh - 一种由 Python 驱动的跨平台 Unix-gazing shell 语言和命令提示符。

特定格式处理

用于解析和操作特定文本格式的库。

  • 一般的
    • tablib - XLS、CSV、JSON、YAML 中表格数据集的模块。
  • 办公室
    • docxtpl - 通过 jinja2 模板编辑 docx 文档
    • openpyxl - 用于读取和写入 Excel 2010 xlsx/xlsm/xltx/xltm 文件的库。
    • pyexcel - 提供一个用于读取、操作和写入 csv、ods、xls、xlsx 和 xlsm 文件的 API。
    • python-docx - 读取、查询和修改 Microsoft Word 2007/2008 docx 文件。
    • python-pptx - 用于创建和更新 PowerPoint (.pptx) 文件的 Python 库。
    • unoconv - 在 LibreOffice/OpenOffice 支持的任何文档格式之间进行转换。
    • XlsxWriter - 用于创建 Excel .xlsx 文件的 Python 模块。
    • xlwings - 一个 BSD 许可的库,可以轻松地从 Excel 调用 Python,反之亦然。
    • xlwt / xlrd - 从 Excel 文件写入和读取数据以及格式化信息。
  • PDF
    • PDFMiner - 从 PDF 文档中提取信息的工具。
    • PyPDF2 - 一个能够拆分、合并和转换 PDF 页面的库。
    • ReportLab - 允许快速创建丰富的 PDF 文档。
  • 降价
    • Mistune - 最快且功能齐全的 Markdown 纯 Python 解析器。
    • Python-Markdown - John Gruber 的 Markdown 的 Python 实现。
  • YAML
    • PyYAML - Python 的 YAML 实现。
  • CSV文件
    • csvkit - 用于转换和使用 CSV 的实用程序。
  • 档案
    • unp - 一个可以轻松解压档案的命令行工具。

静态站点生成器

静态站点生成器是一个以一些文本+模板作为输入,并在输出上生成HTML文件的软件。

  • lektor - 一个易于使用的静态 CMS 和博客引擎。
  • mkdocs - Markdown 友好的文档生成器。
  • makesite - 简单、轻量级且无魔法的静态站点/博客生成器(< 130 行)。
  • nikola - 静态网站和博客生成器。
  • pelican - 支持 Markdown 和 reST 语法的静态站点生成器。

标记

用于标记项目的库。

任务队列

用于处理任务队列的库。

  • celery - 基于分布式消息传递的异步任务队列/作业队列。
  • dramatiq - 一个快速可靠的 Python 3 后台任务处理库。
  • huey - 小型多线程任务队列。
  • mrq - 使用 Redis 和 gevent 的 Python 分布式工作任务队列。
  • rq - Python 的简单作业队列。

模板引擎

用于模板化和词法分析的库和工具。

  • Genshi - 用于生成网络感知输出的 Python 模板工具包。
  • Jinja2 - 一种现代且对设计师友好的模板语言。
  • Mako - 用于 Python 平台的超快速和轻量级模板。

测试

用于测试代码库和生成测试数据的库。

  • 测试框架
    • hypothesis - Hypothesis 是一种基于快速检查样式属性的高级测试库。
    • nose2 - 的后继者nose,基于 `unittest2.
    • pytest - 成熟的全功能 Python 测试工具。
    • Robot Framework - 一个通用的测试自动化框架。
    • unittest -(Python 标准库)单元测试框架。
  • 测试运行器
    • green - 干净、多彩的测试运行程序。
    • mamba - Python 的权威测试工具。诞生于BDD旗下。
    • tox - 在多个 Python 版本中自动构建和测试发行版
  • 图形用户界面/网络测试
    • locust - 用 Python 编写的可扩展用户负载测试工具。
    • PyAutoGUI -PyAutoGUI 是一个面向人类的跨平台 GUI 自动化 Python 模块。
    • Schemathesis - 一种用于对使用 Open API / Swagger 规范构建的 Web 应用程序进行基于属性的自动测试的工具。
    • Selenium -Selenium WebDriver的 Python 绑定.
    • sixpack - 与语言无关的 A/B 测试框架。
    • splinter - 用于测试 Web 应用程序的开源工具。
  • 嘲笑
    • doublex - 强大的 Python 测试双打框架。
    • freezegun - 通过模拟 datetime 模块来穿越时间。
    • httmock - 用于 Python 2.6+ 和 3.2+ 请求的模拟库。
    • httpretty - Python 的 HTTP 请求模拟工具。
    • mock -(Python 标准库)模拟和修补库。
    • mocket - 支持 gevent/asyncio/SSL 的套接字模拟框架。
    • responses - 用于模拟请求 Python 库的实用程序库。
    • VCR.py - 在测试中记录和重播 HTTP 交互。
  • 对象工厂
    • factory_boy - Python 的测试装置替代品。
    • 混音器- 另一个固定装置替代品。支持 Django、Flask、SQLAlchemy、Peewee 等。
    • model_mommy - 创建用于在 Django 中进行测试的随机装置。
  • 代码覆盖率
  • 假数据
    • fake2db - 假数据库生成器。
    • faker - 一个生成假数据的 Python 包。
    • mimesis - 是一个 Python 库,可帮助您生成虚假数据。
    • radar - 生成随机日期时间/时间。

文本处理

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

  • 一般的
    • chardet - Python 2/3 兼容字符编码检测器。
    • difflib -(Python 标准库)用于计算增量的助手。
    • ftfy - 自动使 Unicode 文本不那么破碎并且更一致。
    • fuzzywuzzy - 模糊字符串匹配。
    • Levenshtein - 快速计算 Levenshtein 距离和字符串相似度。
    • pangu.py - 偏执的文本间距。
    • pyfiglet - 用 Python 编写的 figlet 的实现。
    • pypinyin - 将中文汉字(汉字)转换为拼音(拼音)。
    • textdistance - 使用 30 多种算法计算序列之间的距离。
    • unidecode - Unicode 文本的 ASCII 音译。
  • 鼻涕虫
    • awesome-slugify - 一个可以保留 unicode 的 Python slugify 库。
    • python-slugify - 将 unicode 转换为 ASCII 的 Python slugify 库。
    • unicode-slugify - 一个以 Django 作为依赖项生成 unicode slugs 的 slugifier。
  • 唯一标识符
  • 解析器

第三方API

用于访问第三方服务 API 的库。另请参阅Python API 包装器和库列表

网址操纵

用于解析 URL 的库。

  • furl - 一个小型 Python 库,可以轻松解析和操作 URL。
  • purl - 一个简单、不可变的 URL 类,带有用于查询和操作的干净 API。
  • pyshorteners - 一个纯 Python URL 缩短库。
  • webargs - 一个友好的库,用于解析 HTTP 请求参数,内置对流行 Web 框架的支持。

视频

用于处理视频和 GIF 的库。

  • moviepy - 一个基于脚本的电影编辑模块,具有多种格式,包括动画 GIF。
  • scikit-video - SciPy 的视频处理程序。
  • vidgear - 最强大的多线程视频处理框架。

网络资产管理

用于管理、压缩和缩小网站资产的工具。

  • django-compressor - 将链接和内联的 JavaScript 或 CSS 压缩到单个缓存文件中。
  • django-pipeline - Django 的资产打包库。
  • django-storages - Django 的自定义存储后端集合。
  • fanstatic - 将静态文件依赖项作为 Python 包进行打包、优化和服务。
  • fileconveyor - 一个守护进程,用于检测文件并将其同步到 CDN、S3 和 FTP。
  • flask-assets - 帮助您将网络资产集成到您的 Flask 应用程序中。
  • webassets - 捆绑、优化和管理静态资源的唯一缓存破坏 URL。

网页内容提取

用于提取网页内容的库。

  • html2text - 将 HTML 转换为 Markdown 格式的文本。
  • lassie - 人类的 Web 内容检索。
  • micawber - 用于从 URL 中提取丰富内容的小型库。
  • newspaper - Python 中的新闻提取、文章提取和内容管理。
  • python-readability - arc90 可读性工具的快速 Python 端口。
  • requests-html - 人类的 Pythonic HTML 解析。
  • sumy - 用于自动汇总文本文档和 HTML 页面的模块。
  • textract - 从任何文档、Word、PowerPoint、PDF 等中提取文本。
  • toapi - 每个网站都提供 API。

网络爬行

用于自动化网络抓取的库。

  • cola - 分布式爬虫框架。
  • feedparser - 通用提要解析器。
  • grab - 网站抓取框架。
  • MechanicalSoup - 一个用于自动与网站交互的 Python 库。
  • portia -Scrapy 的视觉抓取.
  • pyspider - 一个强大的爬虫系统。
  • robobrowser - 一个简单的 Pythonic 库,用于在没有独立网络浏览器的情况下浏览网络。
  • scrapy - 一种快速的高级屏幕抓取和网络爬虫框架。

网络框架

传统的全栈网络框架。另请参阅RESTful API

WebSocket

用于使用 WebSocket 的库。

WSGI 服务器

WSGI 兼容的 Web 服务器。

  • bjoern - 异步,速度非常快,用 C 语言编写。
  • gunicorn - 预分叉,从 Ruby 的 Unicorn 项目移植而来。
  • uWSGI - 一个旨在开发用于构建托管服务的完整堆栈的项目,用 C 语言编写。
  • 服务员- 多线程,权力金字塔。
  • werkzeug - 一个用于 Python 的 WSGI 实用程序库,它为 Flask 提供支持,并且可以轻松地嵌入到您自己的项目中。

资源

在哪里可以找到学习资源或新的 Python 库。

图书

网站

时事通讯

播客

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/526475
推荐阅读
相关标签
  

闽ICP备14008679号