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上通过在相关的已经打开的问题中留下评论来询问。
如果您对为开源项目做出贡献还不熟悉,本指南将告诉你为什么、什么以及如何联系。