让你相见恨晚的python库(二)

在GitHub搜Python库时发现了一个的宝藏仓库,收录了全网种类超全的Python库!

包括:Web 框架、网络爬虫、网络内容提取、模板引擎、数据库、数据可视化、图片处理、文本处理、自然语言处理、机器学习、日志、代码分析等。

这个仓库有129000+stars。

原链接在这里:

GitHubMaximusarthur/awesome-python: A curated list of awesome Python frameworks, libraries, software and resources (github.com)

e-pyth点赞收藏,就不用担心下次找不到这份python库了~


26.调试工具(Debugging Tools)

用来进行代码调试的库。

  • 调试器
    • ipdb:IPython 启用的 pdb。
    • pudb:全屏,基于控制台的 Python 调试器。
    • pdb++:另一种 pdb 的替代。
    • wdb:一个奇异的 web 调试器,通过 WebSockets 工作。
  • 追踪器
    • lptrace:为 Python 程序打造的 strace。
    • manhole:调试UNIX套接字连接,并显示所有线程的堆栈跟踪和交互式提示。
    • pyringe:能够附加到 Python 进程并将代码注入Python进程的调试器。
    • python-hunter:一个灵活的代码追踪工具包。
  • 性能分析器
    • lineprofiler:逐行性能分析。
    • Memory Profiler、内存:监控 Python 代码的内存使用。
    • py-spy:Python 程序采样分析器,使用 Rust 实现。
    • pyflame:用于 Python 的跟踪分析器。
    • vprof:视觉 Python 分析器。
  • 其他
    • pyelftools:解析和分析 ELF 文件以及 DWARF 调试信息。
    • django-debug-toolbar:为 Django 显示各种调试信息。
    • django-devserver:一个 Django 运行服务器的替代品。
    • flask-debugtoolbar:django-debug-toolbar 的 flask 版。
    • icecream:通过一个简单的函数调用检查变量、表达式和程序执行情况。

27.深度学习(Deep Learning)

神经网络和深度学习相关框架。也可以参考 awesome-deep-learning。

  • Caffe:一个 Caffe 的 python 接口。
  • keras:以 tensorflow/theano/CNTK 为后端的深度学习封装库,快速上手神经网络。
  • MXNet:一个高效和灵活的深度学习框架。
  • Pytorch:一个具有张量和动态神经网络,并有强大 GPU 加速能力的深度学习框架。
  • SerpentAI:游戏代理框架,可使用任意视频游戏作为深度学习沙箱。
  • Theano:一个快速数值计算库。
  • TensorFlow:谷歌开源的最受欢迎的深度学习框架。
  • hebel:GPU 加速的深度学习库。
  • pydeep:Python 深度学习库。

28.DevOps 工具(DevOps Tools)

用于 DevOps 的软件和库。

  • Ansible:一个非常简单的 IT 自动化平台。
  • SaltStack:基础设施自动化和管理系统。
  • OpenStack:用于构建私有和公有云的开源软件。
  • Docker Compose:快速分离的开发环境,使用 Docker。
  • Fabric:一个简单的,Python 风格的工具,用来进行远程执行和部署。
  • cuisine:为 Fabric 提供一系列高级函数。
  • Fabtools:一个用来编写超赞的 Fabric 文件的工具。
  • gitapi:Git 的纯 Python API。
  • hgapi:Mercurial 的纯 Python API。
  • honcho:Foreman 的 Python 克隆版,用来管理基于 Procfile 的应用。
  • pexpect:在一个伪终端中控制交互程序,就像 GNU expect 一样。
  • psutil:一个跨平台进程和系统工具模块。
  • supervisor:UNIX 的进程控制系统。
  • cloudinit:一个多分发包,用于处理云实例的早期初始化。
  • pyinfra:一个通用的 CLI 工具包和 python 库,用于自动化的基础设施。
  • honcho:Foreman 的 Python 克隆版,用于管理基于 Procfile 的应用。
  • BorgBackup:具有压缩和加密功能的重复数据删除存档器。
  • docker-compose:使用 Docker 的快速独立的开发环境。

29.分布式计算(Distributed Computing)

分布式计算相关的框架和库。

  • dpark:Spark 的 Python 克隆版,一个类似 MapReduce 的框架。
  • dumbo:这个 Python 模块可以让人轻松的编写和运行 Hadoop 程序。
  • luigi:这个模块帮你构建批处理作业的复杂流水线。
  • mrjob:在 Hadoop 或 Amazon Web Services 上运行 MapReduce 任务。
  • dask:用于分析计算的灵活的并行计算库。
  • PySpark:Spark 的 Python API 。
  • Ray:一个用于并行和分布式 Python 的系统,它统一了机器学习生态系统。
  • faust:一个 Python 流处理库,核心思想来源 Kafka Streams。
  • streamparse:运行针对事实数据流的 Python 代码。集成了 Apache Storm。
  • mars:是基于张量的,用于进行大规模数据计算的统一计算框架。

30.分发(Distribution)

打包为可执行文件以便分发。

  • PyInstaller:将 Python 程序转换成独立的执行文件(跨平台)。
  • cx_Freeze:将python程序转换为带有一个动态链接库的可执行文件。
  • dh-virtualenv:构建并将 virtualenv 虚拟环境作为一个 Debian 包来发布。
  • Nuitka:将脚本、模块、包编译成可执行文件或扩展模块。
  • py2app:将 Python 脚本变为独立软件包(Mac OS X)。
  • py2exe:将 Python 脚本变为独立软件包(Windows)。
  • pynsist:一个用来创建 Windows 安装程序的工具,可以在安装程序中打包 Python 本身。
  • pyarmor:一个用于加密 python 脚本的工具,也可以将加密后的脚本绑定到固件上,或设置已加密脚本的有效期。
  • shiv:一个命令行工具,可用于构建完全独立的 zip 应用(PEP 441 所描述的那种),同时包含了所有的依赖项。

31.文档(Documentation)

用以生成项目文档的库。

  • Sphinx:Python 文档生成器。
    • awesome-sphinxdoc
  • pdoc:一个可以替换 Epydoc 的库,可以自动生成 Python 库的 API 文档。
  • Pycco:文学编程(literate-programming)风格的文档生成器。

32.下载器(Downloader)

用来进行下载的库.

  • s3cmd:一个用来管理 Amazon S3 和 CloudFront 的命令行工具。
  • s4cmd:超级 S3 命令行工具,性能更加强劲。
  • you-get:一个 YouTube/Youku/Niconico 视频下载器,使用 Python 3 编写。
  • youtube-dl:一个小巧的命令行程序,用来下载 YouTube 视频。
  • akshare:为方便人使用而创建的金融数据接口库。

33.电子商务(E-commerce)

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

  • django-oscar:一个用于 Django 的开源的电子商务框架。
  • django-shop:一个基于 Django 的店铺系统。
  • Cartridge:一个基于 Mezzanine 构建的购物车应用。
  • shoop:一个基于 Django 的开源电子商务平台。
  • alipay:非官方的 Python 支付宝 API。
  • merchant:一个可以接收来自多种支付平台支付的 Django 应用。
  • money:一个货币类库。带有可选的 CLDR 后端本地化格式,提供可扩展的货币兑换解决方案。
  • python-currencies:显示货币格式以及它的数值。
  • forex-python:外汇汇率,比特币价格指数和货币换算。
  • saleor:一款兼容 Django 的电子商务平台。

34.编辑器插件和 IDE(Editor Plugins and IDEs)

  • Emacs
    • elpy:Emacs Python 开发环境。
  • Sublime Text
    • anaconda:Anaconda 可将功能齐全的 Python 开发 IDE 转换为 Sublime Text 3。
    • SublimeJEDI:一个很棒的自动补全库 Jedi 的Sublime Text 插件。
  • Vim
    • jedi-vim:用于 Python 的 Jedi 自动补全库的 Vim 绑定。
    • python-mode:一个将 Vim 转换为 Python IDE 的多合一插件。
    • YouCompleteMe:包含 Jedi 补全的 Python 引擎。
  • Visual Studio
    • PTVS:Visual Studio Python 工具。
  • Visual Studio Code
    • Python:对 Python 有丰富支持的官方 VSCode 扩展。
  • IDE
    • PyCharm:JetBrains 提供的商业 Python IDE,也有免费的社区版。
    • spyder:开源 Python IDE。

35.电子邮件(Email)

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

邮件服务器:

  • modoboa:一个邮件托管和管理平台,具有现代的、简约的 Web UI。
  • salmon:一个 Python 邮件服务器。

客户端 :

  • yagmail:yagmail是一个GMAIL / SMTP客户端,旨在使其尽可能简单地发送电子邮件。
  • imbox:Python IMAP 库。

其他:

  • flanker:一个 email 地址和 Mime 解析库。
  • mailer:一款高性能可扩展的邮件投递框架。
  • inbox:一个开源电子邮件工具箱。

36.企业级应用集成(Enterprise Application Integrations)

企业级环境中用于集成的平台与工具。

  • Zato:ESB, SOA, REST, APIs 以及云的 Python 整合。

37.环境管理(Environment Management)

管理 Python 版本和环境的工具

  • pyenv:简单的 Python 版本管理工具。
  • Vex:可以在虚拟环境中执行命令。
  • virtualenv:创建独立 Python 环境的工具。

38.文件(Files)

文件管理和 MIME(多用途的网际邮件扩充协议)类型检测。

  • aiofiles:基于 asyncio,提供文件异步操作。
  • imghdr:(Python 标准库)检测图片类型。
  • mimetypes:(Python 标准库)将文件名映射为 MIME 类型。
  • path.py:对 os.path 进行封装的模块。
  • pathlib:(Python3.4+ 标准库)跨平台的、面向对象的路径操作库。
  • python-magic:文件类型检测的第三方库 libmagic 的 Python 接口。
  • Unipath:用面向对象的方式操作文件和目录。
  • watchdog:管理文件系统事件的 API 和 shell 工具。
  • PyFilesystem2:Python 的文件系统抽象层。

39.外来函数接口(Foreign Function Interface)

使用外来函数接口的库。

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

40.表单(Forms)

进行表单操作的库。

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

41.函数式编程(Functional Programming)

使用 Python 进行函数式编程。

  • CyToolz:Toolz 的 Cython 实现:高性能函数式工具。
  • fn.py:在 Python 中进行函数式编程:实现了一些享受函数式编程缺失的功能。
  • funcy:炫酷又实用的函数式工具。
  • Toolz:一组用于迭代器,函数和字典的函数式编程工具。
  • Coconut:为了简单、优雅、更 Pythonic 的函数式编程而构建的 Python 变体。
  • more-itertools:比 itertools
    拥有更多的可迭代对象的操作方式。
  • returns:一个类型安全的单元、转换器与合成工具集合。

42.图形用户界面(GUI Development)

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

  • curses:内建的 ncurses 封装,用来创建终端图形用户界面。
  • enaml:使用类似 QML 的 Declaratic 语法来创建美观的用户界面。
  • kivy:一个用来创建自然用户交互(NUI)应用程序的库,可以运行在 Windows, Linux, Mac OS X, Android 以及 iOS 平台上。
  • pyglet:一个 Python 的跨平台窗口及多媒体库。
  • PyQt:跨平台用户界面框架 Qt 的 Python 绑定 ,支持 Qt v4 和 Qt v5。
  • PySide:跨平台用户界面框架 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 技术进行界面的展示。
  • Eel:用于制作简单离线 HTML/JS GUI 应用的库。
  • PySimpleGUI:tkinter,Qt,WxPython 和 Remi 的封装。
  • pywebview:围绕网页视图组件的轻量级跨平台的原生包装。
  • DearPyGui:一个简单的可使用 GPU 加速的 Python GUI 框架。

43.GraphQL(GraphQL)

GraphQL 相关库。

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

44.游戏开发(Game Development)

超赞的游戏开发库。

  • 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)引擎。
  • Arcade:一个现代 Python 框架,用于制作具有引人入胜的图形与声音的游戏。
  • Harfang3D:支持3D,VR 与游戏开发的 Python 框架。

45.地理位置(Geolocation)

地理编码地址以及用来处理经纬度的库。

  • GeoDjango:世界级地理图形 web 框架。
  • GeoIP:MaxMind GeoIP Legacy 数据库的 Python API。
  • geojson:GeoJSON 的 Python 绑定及工具。
  • geopy:Python 地址编码工具箱。
  • django-countries:一个 Django 应用程序,提供用于表格的国家选择功能,国旗图标静态文件以及模型中的国家字段。
  • pygeoip:Python GeoIP 接口。

46.HTML 处理(HTML Manipulation)

处理 HTML 和 XML 的库。

  • BeautifulSoup:以 Python 风格的方式来对 HTML 或 XML 进行迭代,搜索和修改。
  • bleach:一个基于白名单的 HTML 清理和文本链接库。
  • cssutils:一个 Python 的 CSS 库。
  • html5lib:一个兼容标准的 HTML 文档和片段解析及序列化库。
  • lxml:一个非常快速,简单易用,功能齐全的库,用来处理 HTML 和 XML。
  • MarkupSafe:为 Python 实现 XML/HTML/XHTML 标记安全字符串。
  • pyquery:一个解析 HTML 的库,类似 jQuery。
  • requests-html:人性化的,Pythonic 的 HTML 解析库。
  • untangle:将 XML 文档转换为 Python 对象,使其可以方便的访问。
  • xhtml2pdf:HTML/CSS 转 PDF 工具。
  • xmltodict:像处理 JSON 一样处理 XML。
  • WeasyPrint:用于HTML和CSS的可视化呈现引擎,并可以导出为 PDF。
  • xmldataset:简单 XML 解析。

47.HTTP

使用 HTTP 的库。

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

48.硬件(Hardware)

用来对硬件进行编程的库。

  • ino:操作 Arduino 的命令行工具。
  • Pyro:Python 机器人编程库。
  • PyUserInput:跨平台的,控制鼠标和键盘的模块。
  • scapy:一个非常棒的操作数据包的库。
  • wifi:一个 Python 库和命令行工具用来在 Linux 平台上操作 WiFi。
  • Pingo:Pingo 为类似 Raspberry Pi,pcDuino, Intel Galileo 等设备提供统一的 API 用以编程。
  • keyboard:在 Windows 和 Linux 上挂钩并模拟全局键盘事件。
  • mouse:在 Windows 和 Linux 上挂钩并模拟全局鼠标事件。

49.图像处理(Image Processing)

用来操作图像的库.

  • pillow:Pillow 是一个更加易用版的 PIL。
  • hmap:图像直方图映射。
  • imgSeek:一个使用视觉相似性搜索一组图片集合的项目。
  • nude.py:裸体检测。
  • python-barcode:不借助其他库在 Python 程序中生成条形码。
  • pygram:类似 Instagram 的图像滤镜。
  • python-qrcode:一个纯 Python 实现的二维码生成器。
  • Quads:基于四叉树的计算机艺术。
  • scikit-image:一个用于(科学)图像处理的 Python 库。
  • thumbor:一个小型图像服务,具有剪裁,尺寸重设和翻转功能。
  • wand:MagickWand 的 Python 绑定。MagickWand 是 ImageMagick 的 C API 。
  • face_recognition:简单易用的 Python 人脸识别库。
  • pagan:基于输入和哈希的复古风图标(头像)生成工具。
  • PyMatting:支持 alpha matting 的库。
  • pywal:由图像生成配色方案的工具。
  • pyvips:低内存消耗且快速的图像处理库。

50.高性能(Implementations)

让 Python 更快的库。

  • Cython:优化的 Python 静态编译器。使用类型混合使 Python 编译成 C 或 C++ 模块来获得性能的极大提升。
  • CLPython:用 Common Lisp 编写的 Python 编程语言的实现。
  • Grumpy:编译器比解释器更强大的 cpython2.7 替代品(alpha)。
  • IronPython:用 C# 编写的 Python 编程语言的实现。
  • Jython:为 JVM 用 Java 编写的 Python 编程语言的实现。
  • MicroPython:精简高效的 Python 编程语言实现。
  • Pyjion:基于 CoreCLR 的 Python JIT。
  • Numba:Python JIT (just in time) 编译器,针对科学用的 Python ,由 Cython 和 NumPy 的开发者开发。
  • PeachPy:嵌入 Python 的 x86-64 汇编器。可以被用作 Python 内联的汇编器或者是独立的汇编器,用于 Windows,Linux,OS X,Native Client 或者 Go 。
  • PyPy:使用 Python 实现的 Python。解释器使用黑魔法加快 Python 运行速度且不需要加入额外的类型信息。
  • Pyston:使用 LLVM 和现代 JIT 技术构建的 Python 实现,目标是为了获得很好的性能。
  • Stackless Python:一个强化版的 Python。

51.交互式解析器(Interactive Interpreter)

交互式 Python 解析器。

  • IPython:功能丰富的工具,非常有效的使用交互式 Python。
  • bpython:界面丰富的 Python 解析器。
  • ptpython:高级交互式 Python 解析器, 构建于 python-prompt-toolkit 之上。
  • Jupyter Notebook (IPython):一个能够让你最大限度地以交互式方式使用 Python 的丰富工具包。
    • awesome-jupyter

52.国际化(Internationalization)

用来进行国际化的库。

  • Babel:一个 Python 的国际化库。
  • PyICU:一个封装了 ICU C++ 库的 Python 扩展。

53.任务调度(Job Scheduler)

任务调度库。

  • APScheduler:轻巧但强大的进程内任务调度,使你可以调度函数。
  • django-schedule:一个 Django 排程应用。
  • doit:一个任务执行和构建工具。
  • gunnery:分布式系统使用的多用途任务执行工具 ,具有 web 交互界面。
  • Joblib:一组为 Python 提供轻量级作业流水线的工具。
  • Plan:如有神助地编写 crontab 文件。
  • schedule:人性化的 Python 任务调度库。
  • Spiff:使用纯 Python 实现的强大的工作流引擎。
  • TaskFlow:一个可以让你方便执行任务的 Python 库,一致并且可靠。
  • Airflow :是一个工作流分配管理系统,通过有向非循环图的方式管理任务流程,设置任务依赖关系和时间调度。
  • Prefect:一个现代的工作流程编排框架,使构建、计划和监视健壮的数据管道变得容易。

54.日志(Logging)

用来生成和操作日志的库。

  • logging:(Python 标准库) 为 Python 提供日志功能。
  • logbook:Logging 库的替代品。
  • Eliot:为复杂的和分布式系统创建日志。
  • Raven:Sentry 的 Python 客户端。
  • Sentry:实时记录和收集日志的服务器。
  • sentry-python:Python 版 Sentry SDK。
  • loguru:旨在带来愉悦体验的 Python 日志库。
  • structlog:结构化日志,让日志变得简单。

声明:来自汪汪虚拟空间,仅代表创作者观点。链接:https://eyangzhen.com/8087.html

汪汪虚拟空间的头像汪汪虚拟空间

相关推荐

添加微信
添加微信
Ai学习群
返回顶部