Skip to content

awesome-code-resources/awesome-python-zh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

如果您觉得这个项目对您有帮助,就请点右上角的Star按钮为它加星星✨✨ 其他TIOBE Top 20编程语言的中文翻译请看awesome-code-resources。 本项目的原始仓库地址为这里

Awesome Python Awesome

令人敬畏的Python框架,库,软件和资源的自以为是的列表。

灵感来自awesome-php

管理面板

用于管理接口的库。

  • ajenti-您的服务器应得的管理面板。
  • django-grappelli-Django管理界面的爵士皮肤。
  • flask-admin-Flask的简单和可扩展的管理接口框架。
  • flower-芹菜的实时监控和网络管理。
  • jet-bridge-管理面板框架与漂亮的UI (ex Jet Django) 的任何应用程序。
  • wooey-一个Django应用程序,它为Python脚本创建自动web UIs。
  • streamlit-一个框架,它可以让你建立仪表板,生成报告,或在几分钟内创建聊天应用程序。

算法和设计模式

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

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

ASGI服务器

ASGI-compatible web servers.

  • daphne-用于ASGI和asgi-http的HTTP、HTTP2和WebSocket协议服务器。
  • uvicorn-一个闪电般的ASGI服务器实现,使用uvloop和httptools。
  • hypercorn-基于超级库并受Gunicorn启发的ASGI和WSGI服务器。

异步编程

用于异步、并发和并行执行的库。另请参见awesome-asyncio.

  • asyncio-(Python标准库) 异步I/O,事件循环,协则和任务。
  • concurrent.futures-(Python标准库) 用于异步执行可调用对象的高级接口。
  • multiprocessing-(Python标准库) 基于进程的并行性。
  • trio-用于异步并发和I/O的友好库。
  • twisted-事件驱动的网络引擎。
  • uvloop-超快速asyncio事件循环。
  • eventlet-支持WSGI的异步框架。
  • gevent-一个基于coroutine的Python网络库,它使用greenlet

音频

用于操作音频及其元数据的库。

  • 音频
    • audioread-跨库 (GStreamer核心音频MAD FFmpeg) 音频解码。
    • audioFlux-用于音频和音乐分析,特征提取的库。
    • dejavu-音频指纹识别和识别。
    • kapre-Keras音频预处理器。
    • librosa-用于音频和音乐分析的Python库。
    • matchering-用于自动参考音频母盘制作的库。
    • mingus-具有MIDI文件和播放支持的高级音乐理论和符号包。
    • pyaudioanalysis-音频特征提取,分类,分割和应用。
    • pydub-使用简单易用的高级界面操纵音频。
    • timeside-打开web音频处理框架。
  • 元数据
    • beets-音乐库经理和MusicBrainztagger.
    • eyed3-用于处理音频文件的工具,特别是包含ID3元数据的MP3文件。
    • mutagen-用于处理音频元数据的Python模块。
    • tinytag-用于读取MP3,OGG,FLAC和Wave文件的音乐元数据的库。

身份验证

用于实现认证方案的库。

  • OAuth
  • JWT
    • pyjwt-Python中的JSON Web令牌实现。
    • python-jose-Python中的JOSE实现。

构建工具

从源代码编译软件。

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

内置类增强功能

用于增强Python内置类的库。

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

CMS

内容管理系统。

  • feincms-基于Django的最先进的内容管理系统之一。
  • indico-一个功能丰富的事件管理系统,由 @CERN
  • wagtail-一个Django内容管理系统。

缓存

用于缓存数据的库。

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

ChatOps工具

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

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

代码分析

静态分析工具,短线和代码质量检查器。另请参见awesome-static-analysis.

  • 代码分析
    • code2flow-将您的Python和JavaScript代码转换为点流程图。
    • prospector-分析Python代码的工具。
    • vulture-用于查找和分析死Python代码的工具。
  • 代码短绒
  • 代码格式化程序
    • black-不妥协的Python代码格式化程序。
    • isort-用于对导入进行排序的Python实用程序/库。
    • yapf-来自Google的另一个Python代码格式化程序。
  • 静态类型检查器,另请参见awesome-python-typing
    • mypy-在编译时检查变量类型。
    • pyre-check-性能类型检查。
    • typeshed-Python的库存根集合,具有静态类型。
  • 静态类型批注生成器
    • monkeytype-用于Python的系统,该系统通过收集运行时类型来生成静态类型注释。
    • pytype-Pytype检查和推断Python代码的类型-不需要类型注释。

命令行界面开发

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

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

命令行工具

基于CLI的有用工具,可提高工作效率。

  • 生产力工具
    • copier-用于渲染项目模板的库和命令行实用程序。
    • cookiecutter-从cookiecutter (项目模板) 创建项目的命令行实用程序。
    • doitlive-用于在终端中进行实时演示的工具。
    • howdoi-通过命令行即时编码答案。
    • invoke-用于管理面向shell的子进程并将可执行的Python代码组织到CLI可调用的任务中的工具。
    • pathpicker-从bash输出中选择文件。
    • thefuck-更正您以前的控制台命令。
    • tmuxp-Atmux会话管理器。
    • try-一个简单的CLI来尝试python包-它从未如此简单。
  • CLI增强功能
    • httpie一个命令行HTTP客户端,一个用户友好的cURL替换。
    • iredis-具有自动完成和语法突出显示功能的Redis CLI。
    • litecli-具有自动完成和语法突出显示功能的SQLite CLI。
    • mycli-具有自动完成和语法突出显示功能的MySQL CLI。
    • pgcli-具有自动完成和语法突出显示功能的PostgreSQL CLI。

计算机视觉

计算机视觉库。

配置文件

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

  • configparser-(Python标准库) ini文件解析器。
  • configobj-具有验证的ini文件解析器。
  • hydra-Hydra是一个用于优雅地配置复杂应用程序的框架。
  • python-decouple-设置与代码的严格分离。

密码学

  • cryptography-一个旨在向Python开发人员公开加密原语和配方的包。
  • paramiko-领先的原生Python SSHv2协议库。
  • pynacl-Python绑定到网络和加密 (NaCl) 库。

数据分析

用于数据分析的库。

  • pandas-提供高性能,易于使用的数据结构和数据分析工具的库。
  • aws-sdk-pandas-AWS上的熊猫。
  • datasette-用于探索和发布数据的开源多工具。
  • optimus-使用PySpark轻松实现敏捷数据科学工作流程。

数据验证

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

  • cerberus-一个轻量级和可扩展的数据验证库。
  • colander-验证和反序列化通过XML,JSON,HTML表单post获得的数据。
  • jsonschema-一个实现JSON Schema对于Python。
  • schema-用于验证Python数据结构的库。
  • schematics-数据结构验证。
  • voluptuous-一个Python数据验证库。
  • pydantic-使用Python类型提示进行数据验证。

数据可视化

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

  • altair-用于Python的声明性统计可视化库。
  • bokeh-Python的交互式Web绘图。
  • bqplot-Jupyter笔记本的交互式绘图库。
  • cartopy-一个支持matplotlib的制图python库。
  • diagrams-作为代码的图表。
  • matplotlib-一个Python 2D绘图库。
  • plotnine基于ggplot2的Python图形语法。
  • pygal-一个Python SVG图表创建者。
  • pygraphviz-Python接口到Graphviz
  • pyqtgraph-交互式和实时2D/3D/图像绘图和科学/工程小部件。
  • seaborn-使用Matplotlib的统计数据可视化。
  • vispy-基于OpenGL的高性能科学可视化。

数据库

用Python实现的数据库。

  • pickleDB-一个简单而轻量级的Python键值存储。
  • tinydb-一个小型的,面向文档的数据库。
  • zodb-Python的本机对象数据库。键值和对象图数据库。

数据库驱动程序

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

日期和时间

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

  • arrow-一个Python库,提供了一个明智的和人性化的方法来创建,操作,格式化和转换日期,时间和时间戳。
  • dateutil-标准Python的扩展datetime模块。
  • pendulum-Python datetimes变得容易。
  • pytz-世界时区定义,现代和历史。带来了tz database进入Python。

调试工具

用于调试代码的库。

  • 类似pdb的调试器
    • ipdb-启用IPythonpdb
    • pudb-基于控制台的全屏Python调试器。
  • 追踪
    • manhole-调试UNIX套接字连接,并提供所有线程的stacktrace和交互式提示。
    • python-hunter-一个灵活的代码跟踪工具包。
  • Profiler
    • py-spy-用于Python程序的采样分析器。用Rust写的。
    • vprof-Visual Python探查器。
  • 其他

深度学习

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

  • keras-一个高级神经网络库,能够在TensorFlow或Theano上运行。
  • pytorch-Python中的张量和动态神经网络,具有强大的GPU加速。
  • pytorch-lightning-深度学习框架,可快速训练、部署和运送AI产品。
  • tensorflow-Google创建的最受欢迎的深度学习框架。
  • theano-用于快速数值计算的库。

DevOps工具

DevOps的软件和库。

  • 配置管理
    • ansible-一个非常简单的IT自动化平台。
    • cloudinit-一个多分发包,用于处理云实例的早期初始化。
    • openstack-用于构建私有云和公共云的开源软件。
    • pyinfra-通用的CLI工具和python库,用于自动化基础架构。
    • saltstack-基础设施自动化和管理系统。
  • SSH风格部署
    • cuisine-厨师般的面料功能。
    • fabric-一个简单的Pythonic工具,用于远程执行和部署。
  • 流程管理
  • 监测
    • psutil-一个跨平台的进程和系统实用程序模块。
  • 备份
    • borg-具有压缩和加密功能的重复数据删除归档器。

分布式计算

用于分布式计算的框架和库。

  • 批处理
    • dask-用于分析计算的灵活并行计算库。
    • luigi-帮助您构建批处理作业的复杂管道的模块。
    • PySpark-Apache SparkPython API。
    • Ray-一个用于并行和分布式Python的系统,统一了机器学习生态系统。
  • 流处理

分布

库来创建打包的可执行文件以进行发布分发。

  • py2app-冻结Python脚本 (Mac OS X)。
  • py2exe-冻结Python脚本 (Windows)。
  • pyarmor-用于对python脚本进行模糊处理,将模糊处理的脚本绑定到固定机器或使模糊处理的脚本过期的工具。
  • pyinstaller-将Python程序转换为独立的可执行文件 (跨平台)。
  • shiv-用于构建完全自包含的zipapps (PEP 441) 的命令行实用程序,但包含所有依赖项。

文档

用于生成项目文档的库。

下载器

用于下载的库。

  • akshare-一个财务数据接口库,为人类打造!
  • s3cmd-用于管理Amazon S3和CloudFront的命令行工具。
  • youtube-dl-一个命令行程序,用于从YouTube和其他视频网站下载视频。

编辑器插件和ide

  • Emacs
    • elpy-Emacs Python开发环境。
  • Vim
    • jedi-vim-用于Python的Jedi自动完成库的Vim绑定。
    • python-mode-一个all in one插件,用于将Vim转换为Python IDE。
    • YouCompleteMe-包括Jedi-基于Python的完成引擎。
  • Visual Studio
    • PTVS-适用于Visual Studio的Python工具。
  • Visual Studio代码
    • Python-官方VSCode扩展,对Python有丰富的支持。
  • IDE
    • PyCharm-JetBrains的商业Python IDE。有免费的社区版。
    • spyder-开源Python IDE。

电子邮件

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

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

环境管理

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

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

文件操作

用于文件操作的库。

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

函数式编程

用Python进行函数编程。

  • coconut-为简单,优雅,Python函数式编程而构建的Python变体。
  • funcy-一个花哨而实用的功能工具。
  • more-itertools-更多的例程上的迭代操作,超越。
  • returns-一组类型安全的monad、transformers和composition实用程序。
  • cytoolz-Cython实现: 高性能功能实用程序。
  • toolz-用于迭代器、函数和字典的函数实用程序的集合。

GUI开发

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

  • curses-内置的包装器ncurses用于创建终端GUI应用程序。
  • Eel-用于制作简单的电子类离线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-Python绑定的Qt跨平台应用程序和UI框架。
  • PySimpleGUI-tkinter、Qt、WxPython和Remi的包装器。
  • pywebview-围绕webview组件的轻量级跨平台本机包装。
  • TkinterTkinter是Python的事实上的标准GUI包。
  • Toga-Python原生,操作系统原生GUI工具包。
  • urwid-用于创建终端GUI应用程序的库,该应用程序具有对小部件,事件,丰富的颜色等的强大支持。
  • wxPython-wxWidgets C类库与Python的混合。
  • DearPyGui-一个简单的GPU加速的Python GUI框架

GraphQL

使用GraphQL的库。

游戏开发

真棒游戏开发库。

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

地理位置

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

  • django-countries-一个Django应用程序,为模型和表单提供国家/地区字段。
  • geodjango-一个世界级的地理网络框架。
  • geojson-用于GeoJSON的Python绑定和实用程序。
  • geopy-Python地理编码工具箱。

HTML操作

使用HTML和XML的库。

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

HTTP客户端

使用HTTP的库。

  • httpx-用于Python的下一代HTTP客户端。
  • requests-人类的HTTP请求。
  • treq-Python请求,如构建在Twisted的HTTP客户端之上的API。
  • urllib3-具有线程安全连接池,文件post支持,健全友好的HTTP库。

硬件

用于硬件编程的库。

  • keyboard-在Windows和Linux上挂钩并模拟全局键盘事件。
  • mouse-在Windows和Linux上挂钩并模拟全局鼠标事件。
  • pynput-用于控制和监视输入设备的库。
  • scapy-一个辉煌的数据包操作库。

图像处理

用于操作图像的库。

  • pillow-枕头是友好的PIL叉子。
  • python-barcode-在Python中创建条形码,没有额外的依赖关系。
  • pymatting-用于alpha mating的库。
  • python-qrcode-一个纯Python QR码生成器。
  • pywal-从图像生成配色方案的工具。
  • pyvips-具有低内存需求的快速图像处理库。
  • quads-基于四叉树的计算机艺术。
  • scikit-image-用于 (科学) 图像处理的Python库。
  • thumbor-智能成像服务。它可以按需裁剪,调整大小和翻转图像。
  • wand-用于的Python绑定MagickWand,用于ImageMagick的C API。

实现

Python的实现。

  • cpython-默认情况下,最广泛使用的用C编写的Python编程语言实现。
  • cython-为Python优化静态编译器。
  • clpython-用Common Lisp编写的Python编程语言的实现。
  • ironpython-C # 编写的Python编程语言的实现。
  • micropython-一个精益高效的Python编程语言实现。
  • numba-针对科学Python的LLVM的Python JIT编译器。
  • peachpy-嵌入在Python中的x86-64汇编器。
  • pypy-一个非常快速和兼容的Python语言实现。
  • pyston-使用JIT技术的Python实现。

交互式口译员

交互式Python解释器 (REPL)。

国际化

用于使用i18n的库。

  • Babel-Python的国际化库。
  • PyICU-Unicode C库的国际组件的包装 (ICU)。

作业调度程序

用于调度作业的库。

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

日志记录

用于生成和处理日志的库。

  • logbook-Python的日志记录替换。
  • logging-(Python标准库) Python的日志记录工具。
  • loguru-库,旨在带来愉快的日志记录在Python中。
  • sentry-python-Sentry SDK for Python。
  • structlog-结构化日志记录变得容易。

机器学习

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

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

Microsoft 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-一个web挖掘模块。
    • 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控制器。

新闻提要

用于构建用户活动的库。

ORM

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

  • 关系数据库
    • Django Models-The Django ORM.
    • SQLAlchemy-Python SQL工具包和对象关系映射器。
    • awesome-sqlalchemy
    • dataset-将Python dicts存储在数据库中-适用于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打包机构 (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-自行车修理工,Python的重构工具。
  • Bowler-现代Python的安全代码重构。
  • Rope-Rope是一个python重构库。

RESTful API

用于构建RESTful api的库。

  • Django
  • 烧瓶
    • eve-由Flask,MongoDB和良好意图提供支持的REST API框架。
    • flask-api-Flask的可浏览Web api。
    • flask-restful-快速构建用于Flask的REST api。
  • 金字塔
    • cornice-金字塔的RESTful框架。
  • 与框架无关
    • falcon-用于构建云api和web应用程序后端的高性能框架。
    • fastapi-一个现代,快速的web框架,用于基于标准Python类型提示使用Python 3.6构建api。
    • hug-一个Python 3框架,用于干净地公开api。
    • sandman2-用于现有数据库驱动系统的自动化REST api。
    • sanic-一个Python 3.6的web服务器和web框架,它是为了快速而编写的。

机器人技术

机器人图书馆。

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

RPC服务器

兼容RPC的服务器。

科学

科学计算图书馆。另请参见Python-for-Scientists.

  • astropy-一个用于天文学的社区Python库。
  • bcbio-nextgen-为全自动高通量测序分析提供最佳实践管道。
  • bccb-收集与生物分析相关的有用代码。
  • BiopythonBiopython是一套免费的生物计算工具。
  • cclib-用于解析和解释计算化学包的结果的库。
  • Colour-实现全面的颜色理论转换和算法。
  • Karate Club-用于图形结构化数据的无监督机器学习工具箱。
  • 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 Gateway上部署WSGI应用程序的工具。

壳牌

基于Python的shell。

  • xonsh-Python驱动,跨平台,Unix凝视shell语言和命令提示符。

特定格式处理

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

  • 概述
    • tablib-用于XLS,CSV,JSON,YAML中的表格数据集的模块。
  • 办公室
    • docxtpl-通过jinja2模板编辑docx文档
    • openpyxl-用于读取和写入Excel 2010 xlsx/xlsm/xltx/xltm文件的库。
    • pyexcel-提供一个API用于读取,操作和写入csv,ods,xls,xlsx和xlsm文件。
    • python-docx-读取,查询和修改Microsoft Word 2007/2008 docx文件。
    • python-pptx-用于创建和更新PowerPoint (.pptx) 文件的Python库。
    • unoconv-LibreOffice/OpenOffice支持的任何文档格式之间的转换。
    • XlsxWriter-用于创建Excel的Python模块。xlsx文件。
    • xlwings-一个BSD许可的库,可以很容易地从Excel调用Python,反之亦然。
    • xlwt/xlrd-从Excel文件中写入和读取数据和格式化信息。
  • PDF
    • pdfminer.six-Pdfminer.six是原始PDFMiner的社区维护叉。
    • 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-Python中使用Redis和gevent的分布式工作任务队列。
  • rq-Python的简单作业队列。

模板引擎

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

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

测试

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

  • 测试框架
    • hypothesis-假设是一个基于属性的高级Quickcheck风格的测试库。
    • nose2-继任者,基于 “单元测试2”。
    • pytest-成熟的全功能Python测试工具。
    • Robot Framework-一个通用的测试自动化框架。
    • unittest(Python标准库) 单元测试框架。
  • 测试跑步者
    • green-一个干净,丰富多彩的测试运行。
    • mamba-Python的权威测试工具。出生在BDD的旗帜下。
    • tox-在多个Python版本中自动构建和测试发行版
  • GUI/Web测试
    • locust-用Python编写的可扩展用户负载测试工具。
    • PyAutoGUIPyAutoGUI是一个跨平台的GUI自动化Python模块。
    • Schemathesis-用于对使用Open API/Swagger规范构建的web应用程序进行基于属性的自动测试的工具。
    • Selenium-用于的Python绑定SeleniumWebDriver。
    • 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的测试夹具替代品。
    • mixer-另一个固定装置更换。支持Django,Flask,SQLAlchemy,Peewee等。
    • model_mommy-在Django中创建用于测试的随机夹具。
  • 代码覆盖率
  • 虚假数据
    • fake2db-假数据库生成器。
    • faker-生成虚假数据的Python包。
    • mimesis-是一个Python库,可帮助您生成虚假数据。
    • radar-生成随机日期时间/时间。

文本处理

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

  • 概述
    • chardetPython 2/3兼容字符编码检测器。
    • difflib-(Python标准库) 计算增量的助手。
    • ftfy-使Unicode文本更少损坏,更自动一致。
    • fuzzywuzzy-模糊字符串匹配。
    • Levenshtein-Levenshtein距离和字符串相似性的快速计算。
    • pangu.py-偏执的文本间距。
    • pyfiglet-用Python编写的figlet的实现。
    • pypinyin-将中文汉字 (漢字) 转换为拼音 (拼音)。
    • textdistance-使用30种算法计算序列之间的距离。
    • unidecode-Unicode文本的ASCII音译。
  • Slugify
  • 唯一标识符
  • 解析器

第三方api

用于访问第三方服务api的库。另见List of Python API Wrappers and Libraries.

URL操作

用于解析url的库。

  • furl-一个小型Python库,使解析和操作url变得容易。
  • purl-一个简单,不可变的URL类,具有用于询问和操作的干净API。
  • pyshorteners-一个纯Python URL缩短lib。
  • webargs-一个友好的库,用于解析HTTP请求参数,内置支持流行的web框架。

视频

用于操作视频和gif的库。

  • moviepy-用于基于脚本的电影编辑的模块,具有多种格式,包括动画gif。
  • scikit-videoSciPy的视频处理例程。
  • vidgear-最强大的多线程视频处理框架。

Web资产管理

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

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

Web内容提取

用于提取web内容的库。

  • 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。

Web爬行

自动进行web抓取的库。

  • feedparser-通用提要解析器。
  • grab-网站抓取框架。
  • mechanicalsoup-用于自动与网站交互的Python库。
  • scrapy-一个快速的高级屏幕抓取和web爬行框架。

Web框架

传统的全栈web框架。另请参见RESTful API.

WebSocket

用于使用WebSocket的库。

  • autobahn-python-WebSocket和WAMP的Python上的扭曲和asyncio
  • channels-开发人员友好的Django异步。
  • websockets-一个用于构建WebSocket服务器和客户端的库,重点是正确性和简单性。

WSGI服务器

兼容WSGI的web服务器。

  • gunicorn-预分叉,从Ruby的独角兽项目移植。
  • uwsgi-一个项目旨在开发一个完整的堆栈来构建托管服务,用C编写。
  • waitress-多线程,权力金字塔。
  • werkzeug-一个用于Python的WSGI实用程序库,为Flask提供动力,可以轻松地嵌入到您自己的项目中。

Resources

在哪里发现学习资源或新的Python库。

通讯

播客

Contributing

您的贡献总是受欢迎的!请看一下contribution guidelines首先。

如果您对这个自以为是的列表有任何疑问,请随时与我联系@VintaChen在Twitter上或在GitHub上打开一个问题。

About

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

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published