Python非官方库

Python非官方库

该教程是许多非官方库、二进制文件、二进制库和流行应用程序的库的存储库,其中包括Python,这是一个有趣的主题。

该教程提供了64位和32位Windows版本的许多逻辑开源扩展库和二进制库,以及Python编程语言官方CPython版本的wheels。PyPy发行版也有一些二进制文件。

尽管这些库文件是非官方的(非正式、不受注意、个人的、不支持、无担保、无责任,”不提供任何保证”),但其中大多数可用的软件分发版本都是稳定版本,修复了90%的错误。它可以满足大多数需求和项目。

这里提供的库是Windows上最新的官方CPython发行版。它们很可能无法与Blender、Maya、ArcGIS、OSGeo4W、ABAQUS、Cygwin、Pythonxy、Canopy、EPD、Anaconda、WinPython等中的自定义Python框架兼容。许多二进制文件与Windows XP或其他版本不兼容。

Aiohttp

主要特点

  • 同时支持客户端和服务器端的HTTP协议。
  • 同时支持客户端和服务器端的Web-Sockets,并避免了回调地狱。
  • 提供Web服务器中间件和可插拔的路由。

Blist

Blist是一种类似于列表的类型,对于大型列表可以提供更好的性能。

Blist是Python列表的替代数据类型,可以在处理大型列表时提供更好的性能。Blist包还提供了排序列表、排序集合、弱排序列表、弱排序集合、排序字典和btuple类型。

BLOSC

BLOSC是一种针对2D数据优化的高性能压缩器。

  • Blosc(http://blosc.org)是一种针对二进制数据优化的高性能压缩器。它被设计为比传统的非压缩直接内存读取方法(使用memcpy()系统调用)更快地将数据发送到处理器缓存。
  • Blosc适用于压缩包含低熵数据的数学数组,例如稀疏数据、时间序列、具有常规分布值的网格等。
  • python-blosc是一个包装Blosc的Python包。python-blosc支持Python 3.7或更高版本。

BLZ

BLZ是一个针对内存和硬盘的分块压缩数据容器。

  • BLZ是一个用于数学信息的集合体。集合考虑了信息集合的有效扩展/收缩。此外,它也可以进行压缩以减少内存/磁盘需求。压缩过程在内部由Blosc完成,它是一个针对二进制数据进行优化的高性能压缩器。
  • BLZ使用Blosc (http://www.blosc.org)进行数据压缩,使用numexpr (https://github.com/pydata/numexpr)来加速多重向量和查询操作。Blosc可以高效地压缩二进制数据,提高内存访问效率,而numexpr核心减少了内存使用,并使用多个核心来进行计算。中期目标是利用Blaze (http://blaze.pydata.org)中的高级计算能力,除了numexpr之外。

Boost python

Boost python实现了C++和Python之间的无缝互操作性。

欢迎使用Boost.Python,这是一个C++库,可以实现C++和Python编程语言之间的无缝互操作性。该库包括以下功能的支持:

  • 引用和指针
  • C++到Python的异常转换
  • 全球注册类型强制转换
  • 自动跨模块类型转换
  • 高效的函数重载
  • 默认参数
  • 键入参数
  • 在C++中控制Python对象
  • 将C++迭代器导出为Python迭代器
  • 文档字符串

PyCUDA

PyCUDA提供了访问Nvidia的并行计算API的接口。需要py工具、与CUDA工具包相匹配的版本、兼容的Nvidia驱动和MSVC编译器

PyCUDA允许您从Python中访问Nvidia的CUDA并行计算API。 CUDA API的一些封装存在,那么为什么PyCUDA如此特别呢?

  • 对象清理与对象的生命周期绑定在一起。这个原则通常在C++中称为RAII,在写正确、释放和无崩溃代码方面更加简单。 PyCUDA熟悉环境变量,因此(例如)它不会在环境分配的所有内存被释放之前断开连接。
  • 像pycuda.driver.SourceModule和pycuda.gpuarray.GPUArray这样的反射使得CUDA编程比Nvidia的基于C的运行时更加方便。
  • 如果需要,PyCUDA可以提供CUDA驱动API的全部功能。它还包括与OpenGL的互操作代码。
  • 自动错误检查。所有CUDA错误都会自动转化为Python异常。
  • PyCUDA的基础层是用C++编写的,因此上述所有功能都是免费的。
  • 友好的文档和Wiki。
  • 相关的,PyCUDA的姊妹项目PyOpenCL提供了与OpenCL相同的计算功能。

PycURL — 一个Python接口到cURL库

PycURL是一个Python连接到libcurl的接口,libcurl是一个多协议文件传输库。除了urllib Python模块之外,PycURL还可以在Python程序中使用URL标识的对象。除了简单的获取操作外,PycURL还暴露了libcurl的大部分功能,包括:

  • 速度- libcurl非常快,而PycURL作为libcurl的覆盖层也非常快速。 PycURL被基准测试得比请求快几倍。
  • 主要功能包括各种协议支持、SSL、验证和代理选项。 PycURL支持大部分libcurl的回调函数。
  • 多个和共享接口。
  • 附件用于网络操作,允许将PycURL集成到应用程序的I/O循环中(例如使用Tornado)。

必需条件

  • Python 3.5-3.10。
  • libcurl 7.19.0或更高。

PyEDA

PyEDA是一个用于电子设计自动化的Python库。

主要功能

  • 具有多种函数表示的典型布尔代数:
  • 逻辑表达式
  • 真值表,包含三种结果状态(0、1、”不关心”)
  • 简化的、有序的二进制决策图(ROBDDs)
  • SAT求解器:
  • 回溯
  • PicoSAT
  • 求解与/或/非逻辑最小化
  • 形式等同性
  • 多层位向量
  • DIMACS CNF / SAT解析器
  • 逻辑表达式解析器

PYMedia

PYMedia是Python的一个用于媒体文件操作的模块。

  • PYMedia是一个用于wav、mp3、Ogg、avi、divx、dvd、cdda和文件控制的Python模块。
  • 它允许您解析、多路复用、多路复用、转换和编码每种支持的格式。
  • 它可以为Windows、Linux和cygwin编译。
  • PYMedia被设计为非常简单和灵活。
  • 请参阅教程,例如。 它允许您立即创建自己的多媒体应用程序,并使用各种组件按需进行修改。
  • Python语言之所以被选择,是因为它的语义简单而完整,并具备一系列功能。
  • 探索PyCar应用程序,它广泛利用了PYMedia库,并可将您的计算机变成强大的汽车媒体中心。

PYTHON-CISON

Python-Cison实现了一个非常快速的JSON编码器/解码器。

  • 这个模块为Python提供了一个异常快速的JSON编码器/解码器。
  • JSON代表JavaScript对象表示法,是一种基于消息的轻量级信息交换格式,对于人类来说易于阅读/写入,对于机器来说易于解析/生成。JSON是语言无关的,并且在几乎所有编程语言中都有多个实现,使其非常适用于数据交换和存储。
  • 该模块是用C写的,并且依赖于其他直接用Python编写的Python JSON实现相比快上多倍。这个速度收益取决于数据和操作的复杂性。对于编码操作,速度增益在10-200倍的范围内;对于解码操作,速度增益在100-250倍的范围内。

PyX – Python绘图包

概述

PyX是一个用于创建PostScript、PDF和SVG文件的Python包。它将PostScript绘图模型与TeX/LaTeX接口结合在一起。这些原生方法能够实现分发级别的2D和3D图形绘制任务。

功能

  • 后台输出器独立的PostScript、PDF和SVG,可以自由定制的图形
  • 无缝的TeX/LaTeX完全集成
  • 可以访问PostScript的功能,如路径、线型、填充模式、变换、裁剪、位图处理等等
  • 对路径进行高级数学操作,如交点、变换、拆分、平滑等等
  • 精细的图形生成:模块化设计、可插拔的坐标轴、基于合理数学运算的轴划分、灵活的图形样式等等

状态和可用性

PyX正处于不断发展中。计划提供的功能可以在路线图上找到。最新发布版本PyX 0.15可以在PyPI项目页面上获取。

Scipy

Scipy是用于科学、数学和工程等领域的软件。

Scipy是与NumPy数组配合使用的,并提供了许多易于使用和高效的数学例程,如数学积分和优化算法等。它们可以在所有流行的操作系统上运行,安装速度快,免费使用。NumPy和Scipy易于使用,但足够强大,被世界一流的科学家和工程师所信赖。如果你想在计算机上处理数字并展示或发布结果,请尝试使用Scipy!

征集贡献

我们欢迎各种贡献,并对小改进或修复表示感谢;标记为“好的步骤1”的问题可能是一个不错的起点。请参阅我们的贡献指南。

编写代码并不是为Scipy做出贡献的唯一方式。您还可以:

  • 回顾合并请求
  • 处理紧急问题
  • 制作教程、演示文稿和其他教育材料
  • 维护和改进我们的网站
  • 为我们的品牌资源和宣传材料进行视觉设计
  • 协助推广工作并吸纳新的贡献者
  • 撰写奖项提名和协助其他筹款工作

假设您不确定从哪里开始或者您的能力如何适应,那就来联系吧!您可以在邮件列表或者在GitHub上通过在相关的已经打开的问题中留下评论来询问。

如果您对为开源项目做出贡献还不熟悉,本指南将告诉你为什么、什么以及如何联系。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程