跳转到主要内容

一个实现crc32c算法的硬件和软件Python包

项目描述

https://github.com/ICRAR/crc32c/workflows/Build%20and%20release%20to%20PyPI/badge.svg?branch=master https://badge.fury.io/py/crc32c.svg

此包实现了crc32c校验和算法。它自动在基于硬件的实现(使用Intel CPU的CRC32C SSE 4.2指令和ARMv8 CPU上的crc32*指令)和找不到硬件支持时基于软件的实现之间进行选择。

因为crc32c在PyPI上,您可以使用以下命令安装它

pip install crc32c

支持的平台是使用gcc和clang编译器的Linux和OSX,以及使用Visual Studio编译器的Windows。Windows中的其他编译器(例如MinGW)可能也可以工作。PyPI为主要平台/架构也提供了二进制轮。

项目使用某些gcc/clang编译器扩展来支持构建可能不被较旧编译器版本支持的特定于硬件的函数。

用法

此模块公开的核心函数是crc32c(data, value=0, gil_release_mode=-1)。它从初始校验和值开始计算数据的CRC32C校验和,类似于内置的binascii.crc32的工作方式。因此,它可以像这样使用

print(crc32c.crc32c(b'hello world'))
# 3381945770
crc = crc32c.crc32c(b'hello')
print(crc32c.crc32c(b' world', value=crc))
# 3381945770

在旧版本中,此模块公开的函数被称为crc32。该名称仍然存在,但已弃用,并将从库的新版本中删除。

gil_release_mode关键字参数指定是否释放或保持全局解释器锁。它可以设置为以下值

  • 负数:仅在data >= 32KiB时释放GIL

  • 0:永不释放GIL

  • 正数:始终释放GIL

参数gil_release_mode对多线程Python构建没有影响。

crc32c函数的基础上,还提供了一个CRC32CHash(data=b"", gil_release_mode=-1)类。它模仿了标准库中hashlib模块的“哈希对象”。它还提供了一个checksum属性。

crc32c_hash = crc32c.CRC32CHash()
crc32c_hash.update(b'hello')
crc32c_hash.update(b' world')
print(crc32c_hash.checksum == crc32c.crc32c(b'hello world'))
# True
print(crc32c_hash.digest())
# b'\xc9\x94e\xaa'
digest_as_int = int.from_bytes(crc32c_hash.digest(), "big")
print(digest_as_int == crc32c.crc32c(b'hello world'))
# True

有关更多详细信息,请参阅哈希对象的文档。

此外,还可以查阅以下模块级值

  • hardware_based表示正在使用的算法是基于软件还是硬件。

  • big_endian表示平台是大端还是小端。

在执行crc32c.benchmark模块时可以找到基准测试工具。使用-h标志咨询其帮助以获取选项。

实现细节

默认情况下,如果您的CPU没有CRC32C硬件支持,该软件包将回退到使用crc32c校验和算法的软件实现。可以通过将环境变量CRC32C_SW_MODE设置为以下值之一来更改此行为

  • auto:等同于未设置,最终将被弃用。

  • force:无论硬件支持与否,都使用软件实现。

  • none:当导入模块时发出RuntimeWarning,当执行crc32c函数时发出RuntimeError(如果未找到硬件支持)。在此软件包的2.6版本之前,导入模块时将引发ImportError。在1.x版本中,这是默认行为。

CRC32C_SKIP_HW_PROBE设置为1模拟无硬件支持的平台。这主要用于内部测试目的。

软件算法基于Intel的slice-by-8软件包,Evan Jones进行了一些修改,并由Ferry Toth提供打包。还需要进一步修改以使代码更易于移植并适合包含在此Python包中。

Intel SSE 4.2算法基于Mark Adler的代码,需要一些修改以使代码更易于移植并适合包含在此Python包中。

ARMv8硬件实现基于Google的crc32c C++库

许可协议

本软件包根据LGPL-2.1许可证授权。

原始slice-by-8软件算法根据2-clause BSD许可证授权。

对slice-by-8软件算法的进一步修改根据3-clause BSD许可证授权。

原始Intel SSE 4.2 crc32c算法的代码根据crc32c_adler.c文件中嵌入的许可证授权。

原始crc32c ARMv8硬件代码根据3-clause BSD许可证授权。

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分发

crc32c-2.7.1.tar.gz (45.7 kB 查看哈希值)

上传时间 源代码

构建分发

crc32c-2.7.1-pp310-pypy310_pp73-win_amd64.whl (39.8 kB 查看哈希值)

上传时间 PyPy Windows x86-64

crc32c-2.7.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (38.2 kB 查看哈希值)

上传时间 PyPy manylinux: glibc 2.17+ ARM64

crc32c-2.7.1-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (37.9 kB 查看哈希值)

上传时间 PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

crc32c-2.7.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (38.3 kB 查看哈希值)

上传时间 PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

crc32c-2.7.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl (36.4 kB 查看哈希值)

上传时间 PyPy macOS 10.15+ x86-64

crc32c-2.7.1-pp39-pypy39_pp73-win_amd64.whl (39.8 kB 查看哈希值)

上传时间 PyPy Windows x86-64

crc32c-2.7.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (38.2 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ ARM64

crc32c-2.7.1-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (37.9 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

crc32c-2.7.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (38.3 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

crc32c-2.7.1-pp39-pypy39_pp73-macosx_10_15_x86_64.whl (36.4 kB 查看哈希值)

上传于 PyPy macOS 10.15+ x86-64

crc32c-2.7.1-pp38-pypy38_pp73-win_amd64.whl (39.8 kB 查看哈希值)

上传于 PyPy Windows x86-64

crc32c-2.7.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (38.2 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ ARM64

crc32c-2.7.1-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (37.9 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

crc32c-2.7.1-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (38.3 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

crc32c-2.7.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl (36.3 kB 查看哈希值)

上传于 PyPy macOS 10.9+ x86-64

crc32c-2.7.1-pp37-pypy37_pp73-win_amd64.whl (39.8 kB 查看哈希值)

上传于 PyPy Windows x86-64

crc32c-2.7.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (38.2 kB 查看哈希值)

上传时间: PyPy manylinux: glibc 2.17+ ARM64

crc32c-2.7.1-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (37.9 kB 查看哈希值)

上传时间: PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

crc32c-2.7.1-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (38.3 kB 查看哈希值)

上传时间: PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

crc32c-2.7.1-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (36.3 kB 查看哈希值)

上传时间: PyPy macOS 10.9+ x86-64

crc32c-2.7.1-cp313-cp313t-win_amd64.whl (39.8 kB 查看哈希值)

上传时间: CPython 3.13t Windows x86-64

crc32c-2.7.1-cp313-cp313t-win32.whl (38.3 kB 查看哈希值)

上传时间: CPython 3.13t Windows x86

crc32c-2.7.1-cp313-cp313t-musllinux_1_2_x86_64.whl (52.5 kB 查看哈希值)

上传时间: CPython 3.13t musllinux: musl 1.2+ x86-64

crc32c-2.7.1-cp313-cp313t-musllinux_1_2_i686.whl (51.9 kB 查看哈希值)

上传时间: CPython 3.13t musllinux: musl 1.2+ i686

crc32c-2.7.1-cp313-cp313t-musllinux_1_2_aarch64.whl (53.8 kB 查看哈希值)

上传时间: CPython 3.13t musllinux: musl 1.2+ ARM64

crc32c-2.7.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (54.2 kB 查看哈希值)

上传时间: CPython 3.13t manylinux: glibc 2.17+ ARM64

crc32c-2.7.1-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (52.7 kB 查看哈希值)

上传于 CPython 3.13t manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

crc32c-2.7.1-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (51.6 kB 查看哈希值)

上传于 CPython 3.13t manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

crc32c-2.7.1-cp313-cp313t-macosx_11_0_arm64.whl (35.3 kB 查看哈希值)

上传于 CPython 3.13t macOS 11.0+ ARM64

crc32c-2.7.1-cp313-cp313t-macosx_10_13_x86_64.whl (36.9 kB 查看哈希值)

上传于 CPython 3.13t macOS 10.13+ x86-64

crc32c-2.7.1-cp313-cp313t-macosx_10_13_universal2.whl (49.4 kB 查看哈希值)

上传于 CPython 3.13t macOS 10.13+ universal2 (ARM64, x86-64)

crc32c-2.7.1-cp313-cp313t-macosx_10_13_universal2.whl (39.8 kB 查看哈希值)

上传于 CPython 3.13 Windows x86-64

crc32c-2.7.1-cp313-cp313-win32.whl (38.4 kB 查看哈希值)

上传于 CPython 3.13 Windows x86

crc32c-2.7.1-cp313-cp313-musllinux_1_2_x86_64.whl (53.4 kB 查看哈希值)

上传于 CPython 3.13 musllinux: musl 1.2+ x86-64

crc32c-2.7.1-cp313-cp313-musllinux_1_2_i686.whl (52.7 kB 查看哈希值)

上传于 CPython 3.13 musllinux: musl 1.2+ i686

crc32c-2.7.1-cp313-cp313-musllinux_1_2_aarch64.whl (54.5 kB 查看哈希值)

上传于 CPython 3.13 musllinux: musl 1.2+ ARM64

crc32c-2.7.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (54.6 kB 查看哈希值)

上传于 CPython 3.13 manylinux: glibc 2.17+ ARM64

crc32c-2.7.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (53.4 kB 查看哈希)

上传于 CPython 3.13 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

crc32c-2.7.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (52.3 kB 查看哈希)

上传于 CPython 3.13 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

crc32c-2.7.1-cp313-cp313-macosx_11_0_arm64.whl (35.4 kB 查看哈希)

上传于 CPython 3.13 macOS 11.0+ ARM64

crc32c-2.7.1-cp313-cp313-macosx_10_13_x86_64.whl (37.0 kB 查看哈希)

上传于 CPython 3.13 macOS 10.13+ x86-64

crc32c-2.7.1-cp313-cp313-macosx_10_13_universal2.whl (49.6 kB 查看哈希)

上传于 CPython 3.13 macOS 10.13+ universal2 (ARM64, x86-64)

crc32c-2.7.1-cp312-cp312-win_amd64.whl (39.8 kB 查看哈希)

上传于 CPython 3.12 Windows x86-64

crc32c-2.7.1-cp312-cp312-win32.whl (38.4 kB 查看哈希)

上传于 CPython 3.12 Windows x86

crc32c-2.7.1-cp312-cp312-musllinux_1_2_x86_64.whl (53.3 kB 查看哈希)

上传于 CPython 3.12 musllinux: musl 1.2+ x86-64

crc32c-2.7.1-cp312-cp312-musllinux_1_2_i686.whl (52.6 kB 查看哈希)

上传于 CPython 3.12 musllinux: musl 1.2+ i686

crc32c-2.7.1-cp312-cp312-musllinux_1_2_aarch64.whl (54.5 kB 查看哈希值)

上传时间: CPython 3.12 musllinux: musl 1.2+ ARM64

crc32c-2.7.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (54.7 kB 查看哈希值)

上传时间: CPython 3.12 manylinux: glibc 2.17+ ARM64

crc32c-2.7.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (53.5 kB 查看哈希值)

上传时间: CPython 3.12 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

crc32c-2.7.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (52.4 kB 查看哈希值)

上传时间: CPython 3.12 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

crc32c-2.7.1-cp312-cp312-macosx_11_0_arm64.whl (35.4 kB 查看哈希值)

上传时间: CPython 3.12 macOS 11.0+ ARM64

crc32c-2.7.1-cp312-cp312-macosx_10_13_x86_64.whl (37.0 kB 查看哈希值)

上传时间: CPython 3.12 macOS 10.13+ x86-64

crc32c-2.7.1-cp312-cp312-macosx_10_13_universal2.whl (49.6 kB 查看哈希值)

上传时间: CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64)

crc32c-2.7.1-cp311-cp311-win_amd64.whl (39.8 kB 查看哈希值)

上传时间: CPython 3.11 Windows x86-64

crc32c-2.7.1-cp311-cp311-win32.whl (38.4 kB 查看哈希值)

上传时间: CPython 3.11 Windows x86

crc32c-2.7.1-cp311-cp311-musllinux_1_2_x86_64.whl (53.6 kB 查看哈希值)

上传于 CPython 3.11 musllinux: musl 1.2+ x86-64

crc32c-2.7.1-cp311-cp311-musllinux_1_2_i686.whl (52.9 kB 查看哈希值)

上传于 CPython 3.11 musllinux: musl 1.2+ i686

crc32c-2.7.1-cp311-cp311-musllinux_1_2_aarch64.whl (54.7 kB 查看哈希值)

上传于 CPython 3.11 musllinux: musl 1.2+ ARM64

crc32c-2.7.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (54.9 kB 查看哈希值)

上传于 CPython 3.11 manylinux: glibc 2.17+ ARM64

crc32c-2.7.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (53.7 kB 查看哈希值)

上传于 CPython 3.11 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

crc32c-2.7.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (52.6 kB 查看哈希值)

上传于 CPython 3.11 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

crc32c-2.7.1-cp311-cp311-macosx_11_0_arm64.whl (35.4 kB 查看哈希值)

上传于 CPython 3.11 macOS 11.0+ ARM64

crc32c-2.7.1-cp311-cp311-macosx_10_9_x86_64.whl (37.2 kB 查看哈希值)

上传于 CPython 3.11 macOS 10.9+ x86-64

crc32c-2.7.1-cp311-cp311-macosx_10_9_universal2.whl (49.7 kB 查看哈希值)

上传于 CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)

crc32c-2.7.1-cp310-cp310-win_amd64.whl (39.8 kB 查看哈希值)

上传于 CPython 3.10 Windows x86-64

crc32c-2.7.1-cp310-cp310-win32.whl (38.4 kB 查看哈希值)

上传于 CPython 3.10 Windows x86

crc32c-2.7.1-cp310-cp310-musllinux_1_2_x86_64.whl (52.7 kB 查看哈希值)

上传于 CPython 3.10 musllinux: musl 1.2+ x86_64

crc32c-2.7.1-cp310-cp310-musllinux_1_2_i686.whl (52.1 kB 查看哈希值)

上传于 CPython 3.10 musllinux: musl 1.2+ i686

crc32c-2.7.1-cp310-cp310-musllinux_1_2_aarch64.whl (53.9 kB 查看哈希值)

上传于 CPython 3.10 musllinux: musl 1.2+ ARM64

crc32c-2.7.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (54.1 kB 查看哈希值)

上传于 CPython 3.10 manylinux: glibc 2.17+ ARM64

crc32c-2.7.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (52.9 kB 查看哈希值)

上传于 CPython 3.10 manylinux: glibc 2.17+ x86_64 manylinux: glibc 2.5+ x86_64

crc32c-2.7.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (51.8 kB 查看哈希值)

上传于 CPython 3.10 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

crc32c-2.7.1-cp310-cp310-macosx_11_0_arm64.whl (35.4 kB 查看哈希值)

上传于 CPython 3.10 macOS 11.0+ ARM64

crc32c-2.7.1-cp310-cp310-macosx_10_9_x86_64.whl (37.2 kB 查看哈希值)

上传于 CPython 3.10 macOS 10.9+ x86_64

crc32c-2.7.1-cp310-cp310-macosx_10_9_universal2.whl (49.7 kB 查看哈希值)

上传于 CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)

crc32c-2.7.1-cp39-cp39-win_amd64.whl (39.8 kB 查看哈希值)

上传于 CPython 3.9 Windows x86-64

crc32c-2.7.1-cp39-cp39-win32.whl (38.4 kB 查看哈希值)

上传时间: CPython 3.9 Windows x86

crc32c-2.7.1-cp39-cp39-musllinux_1_2_x86_64.whl (52.5 kB 查看哈希值)

上传时间: CPython 3.9 musllinux: musl 1.2+ x86-64

crc32c-2.7.1-cp39-cp39-musllinux_1_2_i686.whl (51.9 kB 查看哈希值)

上传时间: CPython 3.9 musllinux: musl 1.2+ i686

crc32c-2.7.1-cp39-cp39-musllinux_1_2_aarch64.whl (53.7 kB 查看哈希值)

上传时间: CPython 3.9 musllinux: musl 1.2+ ARM64

crc32c-2.7.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (53.9 kB 查看哈希值)

上传时间: CPython 3.9 manylinux: glibc 2.17+ ARM64

crc32c-2.7.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (52.7 kB 查看哈希值)

上传时间: CPython 3.9 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

crc32c-2.7.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (51.6 kB 查看哈希值)

上传时间: CPython 3.9 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

crc32c-2.7.1-cp39-cp39-macosx_11_0_arm64.whl (35.4 kB 查看哈希值)

上传时间: CPython 3.9 macOS 11.0+ ARM64

crc32c-2.7.1-cp39-cp39-macosx_10_9_x86_64.whl (37.1 kB 查看哈希值)

上传时间: CPython 3.9 macOS 10.9+ x86-64

crc32c-2.7.1-cp39-cp39-macosx_10_9_universal2.whl (49.7 kB 查看哈希值)

上传时间: CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)

crc32c-2.7.1-cp38-cp38-win_amd64.whl (39.8 kB 查看哈希)

上传时间 CPython 3.8 Windows x86-64

crc32c-2.7.1-cp38-cp38-win32.whl (38.4 kB 查看哈希)

上传时间 CPython 3.8 Windows x86

crc32c-2.7.1-cp38-cp38-musllinux_1_2_x86_64.whl (52.6 kB 查看哈希)

上传时间 CPython 3.8 musllinux: musl 1.2+ x86-64

crc32c-2.7.1-cp38-cp38-musllinux_1_2_i686.whl (51.9 kB 查看哈希)

上传时间 CPython 3.8 musllinux: musl 1.2+ i686

crc32c-2.7.1-cp38-cp38-musllinux_1_2_aarch64.whl (53.7 kB 查看哈希)

上传时间 CPython 3.8 musllinux: musl 1.2+ ARM64

crc32c-2.7.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (54.5 kB 查看哈希)

上传时间 CPython 3.8 manylinux: glibc 2.17+ ARM64

crc32c-2.7.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (53.3 kB 查看哈希)

上传时间 CPython 3.8 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

crc32c-2.7.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (52.1 kB 查看哈希)

上传时间 CPython 3.8 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

crc32c-2.7.1-cp38-cp38-macosx_11_0_arm64.whl (35.4 kB 查看哈希)

上传时间 CPython 3.8 macOS 11.0+ ARM64

crc32c-2.7.1-cp38-cp38-macosx_10_9_x86_64.whl (37.1 kB 查看哈希)

上传时间 CPython 3.8 macOS 10.9+ x86-64

crc32c-2.7.1-cp38-cp38-macosx_10_9_universal2.whl (49.7 kB 查看哈希值)

上传时间 CPython 3.8 macOS 10.9+ universal2 (ARM64, x86-64)

crc32c-2.7.1-cp37-cp37m-win_amd64.whl (39.8 kB 查看哈希值)

上传时间 CPython 3.7m Windows x86-64

crc32c-2.7.1-cp37-cp37m-win32.whl (38.4 kB 查看哈希值)

上传时间 CPython 3.7m Windows x86

crc32c-2.7.1-cp37-cp37m-musllinux_1_2_x86_64.whl (53.6 kB 查看哈希值)

上传时间 CPython 3.7m musllinux: musl 1.2+ x86-64

crc32c-2.7.1-cp37-cp37m-musllinux_1_2_i686.whl (53.0 kB 查看哈希值)

上传时间 CPython 3.7m musllinux: musl 1.2+ i686

crc32c-2.7.1-cp37-cp37m-musllinux_1_2_aarch64.whl (54.8 kB 查看哈希值)

上传时间 CPython 3.7m musllinux: musl 1.2+ ARM64

crc32c-2.7.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (55.5 kB 查看哈希值)

上传时间 CPython 3.7m manylinux: glibc 2.17+ ARM64

crc32c-2.7.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (54.3 kB 查看哈希值)

上传时间 CPython 3.7m manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

crc32c-2.7.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (53.2 kB 查看哈希值)

上传时间 CPython 3.7m manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

crc32c-2.7.1-cp37-cp37m-macosx_10_9_x86_64.whl (37.1 kB 查看哈希值)

上传时间 CPython 3.7m macOS 10.9+ x86-64

由以下机构支持