跳转到主要内容

xxHash的Python绑定

项目描述

Github Actions Status Latest Version Supported Python versions License

xxhash是Yann Collet编写的xxHash库的Python绑定。

安装

$ pip install xxhash

您也可以使用conda进行安装

$ conda install -c conda-forge python-xxhash

从源安装

$ pip install --no-binary xxhash xxhash

先决条件

在Debian/Ubuntu上

$ apt-get install python-dev gcc

在CentOS/Fedora上

$ yum install python-devel gcc redhat-rpm-config

链接到libxxhash.so

默认情况下,python-xxhash将使用捆绑的xxHash,我们可以通过指定ENV变量XXHASH_LINK_SO来更改此设置。

$ XXHASH_LINK_SO=1 pip install --no-binary xxhash xxhash

用法

可以使用模块属性VERSIONXXHASH_VERSION分别检索模块版本及其后端xxHash库版本。

>>> import xxhash
>>> xxhash.VERSION
'2.0.0'
>>> xxhash.XXHASH_VERSION
'0.8.0'

此模块遵循hashlib兼容性,这意味着您可以像使用hashlib.md5一样使用它。

update() – 使用附加字符串更新当前摘要
digest() – 返回当前摘要值
hexdigest() – 返回当前摘要作为十六进制数字的字符串
intdigest() – 返回当前摘要作为整数
copy() – 返回当前xxhash对象的副本
reset() – 重置状态

md5摘要返回bytes,但原始xxh32和xxh64 C API返回整数。虽然此模块已实现hashlib兼容性,但intdigest()也提供以获取整数摘要。

本模块提供的哈希算法构造函数是 xxh32()xxh64()

例如,要获取字节字符串 b'Nobody inspects the spammish repetition' 的摘要

>>> import xxhash
>>> x = xxhash.xxh32()
>>> x.update(b'Nobody inspects')
>>> x.update(b' the spammish repetition')
>>> x.digest()
b'\xe2);/'
>>> x.digest_size
4
>>> x.block_size
16

更简洁的表示

>>> xxhash.xxh32(b'Nobody inspects the spammish repetition').hexdigest()
'e2293b2f'
>>> xxhash.xxh32(b'Nobody inspects the spammish repetition').digest() == x.digest()
True

可选的种子(默认为0)可以用来可预测地改变结果

>>> import xxhash
>>> xxhash.xxh64('xxhash').hexdigest()
'32dd38952c4bc720'
>>> xxhash.xxh64('xxhash', seed=20141025).hexdigest()
'b559b98d844e0635'
>>> x = xxhash.xxh64(seed=20141025)
>>> x.update('xxhash')
>>> x.hexdigest()
'b559b98d844e0635'
>>> x.intdigest()
13067679811253438005

请注意,xxh32接受一个无符号32位整数作为种子,而xxh64接受一个无符号64位整数。尽管无符号整数溢出是定义良好的行为,但最好避免这种情况发生

>>> xxhash.xxh32('I want an unsigned 32-bit seed!', seed=0).hexdigest()
'f7a35af8'
>>> xxhash.xxh32('I want an unsigned 32-bit seed!', seed=2**32).hexdigest()
'f7a35af8'
>>> xxhash.xxh32('I want an unsigned 32-bit seed!', seed=1).hexdigest()
'd8d4b4ba'
>>> xxhash.xxh32('I want an unsigned 32-bit seed!', seed=2**32+1).hexdigest()
'd8d4b4ba'
>>>
>>> xxhash.xxh64('I want an unsigned 64-bit seed!', seed=0).hexdigest()
'd4cb0a70a2b8c7c1'
>>> xxhash.xxh64('I want an unsigned 64-bit seed!', seed=2**64).hexdigest()
'd4cb0a70a2b8c7c1'
>>> xxhash.xxh64('I want an unsigned 64-bit seed!', seed=1).hexdigest()
'ce5087f12470d961'
>>> xxhash.xxh64('I want an unsigned 64-bit seed!', seed=2**64+1).hexdigest()
'ce5087f12470d961'

digest() 返回整数摘要的 大端 表示的字节

>>> import xxhash
>>> h = xxhash.xxh64()
>>> h.digest()
b'\xefF\xdb7Q\xd8\xe9\x99'
>>> h.intdigest().to_bytes(8, 'big')
b'\xefF\xdb7Q\xd8\xe9\x99'
>>> h.hexdigest()
'ef46db3751d8e999'
>>> format(h.intdigest(), '016x')
'ef46db3751d8e999'
>>> h.intdigest()
17241709254077376921
>>> int(h.hexdigest(), 16)
17241709254077376921

除了上面提到的xxh32/xxh64,还提供了单次函数,这样我们就可以避免在堆上分配XXH32/64状态

xxh32_digest(bytes, seed=0)
xxh32_intdigest(bytes, seed=0)
xxh32_hexdigest(bytes, seed=0)
xxh64_digest(bytes, seed=0)
xxh64_intdigest(bytes, seed=0)
xxh64_hexdigest(bytes, seed=0)
>>> import xxhash
>>> xxhash.xxh64('a').digest() == xxhash.xxh64_digest('a')
True
>>> xxhash.xxh64('a').intdigest() == xxhash.xxh64_intdigest('a')
True
>>> xxhash.xxh64('a').hexdigest() == xxhash.xxh64_hexdigest('a')
True
>>> xxhash.xxh64_hexdigest('xxhash', seed=20141025)
'b559b98d844e0635'
>>> xxhash.xxh64_intdigest('xxhash', seed=20141025)
13067679811253438005L
>>> xxhash.xxh64_digest('xxhash', seed=20141025)
'\xb5Y\xb9\x8d\x84N\x065'
In [1]: import xxhash

In [2]: %timeit xxhash.xxh64_hexdigest('xxhash')
268 ns ± 24.1 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

In [3]: %timeit xxhash.xxh64('xxhash').hexdigest()
416 ns ± 17.3 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

XXH3哈希自v2.0.0(xxHash v0.8.0)起可用,它们是

流式类

xxh3_64
xxh3_128

单次函数

xxh3_64_digest(bytes, seed=0)
xxh3_64_intdigest(bytes, seed=0)
xxh3_64_hexdigest(bytes, seed=0)
xxh3_128_digest(bytes, seed=0)
xxh3_128_intdigest(bytes, seed=0)
xxh3_128_hexdigest(bytes, seed=0)

以及别名

xxh128 = xxh3_128
xxh128_digest = xxh3_128_digest
xxh128_intdigest = xxh3_128_intdigest
xxh128_hexdigest = xxh3_128_hexdigest

注意事项

SEED OVERFLOW

xxh32接受一个无符号32位整数作为种子,而xxh64接受一个无符号64位整数作为种子。请确保种子大于或等于 0

ENDIANNESS

截至python-xxhash 0.3.0,digest() 返回整数摘要的 大端 表示的字节。它以前是little-endian。

DONT USE XXHASH IN HMAC

尽管你可以将xxhash用作 HMAC 哈希函数,但强烈建议不要这样做。

xxhash 不是 一种加密哈希函数,它是一种以速度和质量为目标的非加密哈希算法。不要将xxhash放在需要加密哈希函数的任何位置。

变更日志

v3.5.0 2024-08-17

  • 为Python 3.13构建wheel

v3.4.1 2023-10-05

  • 为Python 3.12构建wheel

  • 删除setuptools_scm

v3.4.0 2023-10-05

撤回 由于wheel构建问题。

v3.3.0 2023-07-29

  • 升级xxHash到v0.8.2

  • 停止支持Python 3.6

v3.2.0 2022-12-28

这是最后一个支持Python 3.6的版本

  • 构建Python 3.11 wheel。

  • 删除setup.py test_suites,直接调用unittest

v3.1.0 2022-10-19

  • 类型注解。

  • 启用muslinux wheel构建。

v3.0.0 2022-02-25

  • 新集合 algorithms_available 列出 xxhash 包中所有实现的算法。

  • 将xxHash升级到v0.8.1。

  • 停止支持EOL Python版本,从现在起要求python >= 3.6。

  • 迁移到github actions并构建macOS的arm64 wheel。

  • 始终释放GIL。

v2.0.2 2021-04-15

  • 修复Travis CI OSX dpl python2.7 get-pip.py错误

v2.0.1 2021-04-15

  • 仅触发Python 3.9 wheel构建。

v2.0.0 2020-08-03

  • 要求xxHash版本 >= v0.8.0

  • 将xxHash升级到v0.8.0

  • XXH3哈希:xxh3_64xxh3_128以及它们的单次函数

v1.4.4 2020-06-20

  • 升级xxHash到v0.7.3

  • 停止使用PEP393已弃用的API

  • 使用XXH(32|64)_canonicalFromHash替换u2bytes和ull2bytes

v1.4.3 2019-11-12

  • 升级xxHash到v0.7.2

  • Python 3.8 wheel

v1.4.2 2019-10-13

  • 修复:当读取 README.rst 时,如果默认编码不是 UTF-8,setup.py 将失败

v1.4.1 2019-08-27

  • 修复:源 tarball 中缺少 xxh3.h

v1.4.0 2019-08-25

  • 升级 xxHash 到 v0.7.1

v1.3.0 2018-10-21

v1.2.0 2018-07-13

  • 添加 oneshot 函数 xxh{32,64}_{,int,hex}digest

v1.1.0 2018-07-05

  • 允许输入大于 2GB

  • 在足够大的输入上释放 GIL

  • 停止支持 Python 3.2

v1.0.1 2017-03-02

  • 主动释放状态,而不是委托给 ffi.gc

v1.0.0 2017-02-10

  • 修复 copy() 崩溃

  • 添加 CFFI 变体

v0.6.3 2017-02-10

  • 修复 copy() 崩溃

v0.6.2 2017-02-10

  • 升级 xxHash 到 v0.6.2

v0.6.1 2016-06-26

  • 升级 xxHash 到 v0.6.1

v0.5.0 2016-03-02

  • 升级 xxHash 到 v0.5.0

v0.4.3 2015-08-21

  • 升级 xxHash 到 r42

v0.4.1 2015-08-16

  • 升级 xxHash 到 r41

v0.4.0 2015-08-05

  • 添加方法 reset

  • 升级 xxHash 到 r40

v0.3.2 2015-01-27

  • 修复文档字符串中的某些错误

v0.3.1 2015-01-24

  • 升级 xxHash 到 r39

v0.3.0 2014-11-11

  • 更改 digest() 从小端表示到整数摘要的大端表示。此更改破坏了兼容性(digest() 结果不同)。

v0.2.0 2014-10-25

  • 使此包符合 hashlib 规范

v0.1.3 2014-10-23

  • 更新 xxHash 到 r37

v0.1.2 2014-10-19

  • 改进:检查 XXHnn_init() 返回值。

  • 更新 xxHash 到 r36

v0.1.1 2014-08-07

  • 改进:现在可以使用 Visual C++ 编译器构建。

v0.1.0 2014-08-05

  • 新增:XXH32 和 XXH64 类型,支持部分更新。

  • 修复:在 Python 3.4 下构建

v0.0.2 2014-08-03

  • 新增:支持 Python 3

v0.0.1 2014-07-30

  • 新增:xxh32 和 xxh64

项目详情


下载文件

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

源代码分发

xxhash-3.5.0.tar.gz (84.2 kB 查看哈希值)

上传时间: 源代码

构建的发行版

xxhash-3.5.0-pp310-pypy310_pp73-win_amd64.whl (30.1 kB 查看哈希值)

上传时间: PyPy Windows x86-64

xxhash-3.5.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.0 kB 查看哈希值)

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

xxhash-3.5.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (36.2 kB 查看哈希值)

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

xxhash-3.5.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (40.5 kB 查看哈希值)

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

xxhash-3.5.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl (29.7 kB 查看哈希值)

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

xxhash-3.5.0-pp39-pypy39_pp73-win_amd64.whl (30.1 kB 查看哈希值)

上传时间: PyPy Windows x86-64

xxhash-3.5.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.0 kB 查看哈希值)

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

xxhash-3.5.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (36.2 kB 查看哈希值)

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

xxhash-3.5.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (40.5 kB 查看哈希值)

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

xxhash-3.5.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl (29.7 kB 查看哈希值)

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

xxhash-3.5.0-pp38-pypy38_pp73-win_amd64.whl (30.1 kB 查看哈希值)

上传时间: PyPy Windows x86-64

xxhash-3.5.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.0 kB 查看哈希值)

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

xxhash-3.5.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (36.2 kB 查看哈希值)

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

xxhash-3.5.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (40.5 kB 查看哈希值)

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

xxhash-3.5.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl (29.7 kB 查看哈希值)

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

xxhash-3.5.0-pp37-pypy37_pp73-win_amd64.whl (30.1 kB 查看哈希值)

上传时间: PyPy Windows x86-64

xxhash-3.5.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (32.5 kB 查看哈希值)

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

xxhash-3.5.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (36.5 kB 查看哈希值)

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

xxhash-3.5.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (40.9 kB 查看哈希值)

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

xxhash-3.5.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (29.7 kB 查看哈希值)

上传时间 PyPy macOS 10.9+ x86-64

xxhash-3.5.0-cp313-cp313-win_arm64.whl (26.8 kB 查看哈希值)

上传时间 CPython 3.13 Windows ARM64

xxhash-3.5.0-cp313-cp313-win_amd64.whl (30.0 kB 查看哈希值)

上传时间 CPython 3.13 Windows x86-64

xxhash-3.5.0-cp313-cp313-win32.whl (30.2 kB 查看哈希值)

上传时间 CPython 3.13 Windows x86

xxhash-3.5.0-cp313-cp313-musllinux_1_2_x86_64.whl (192.1 kB 查看哈希值)

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

xxhash-3.5.0-cp313-cp313-musllinux_1_2_s390x.whl (414.7 kB 查看哈希值)

上传时间 CPython 3.13 musllinux: musl 1.2+ s390x

xxhash-3.5.0-cp313-cp313-musllinux_1_2_ppc64le.whl (210.3 kB 查看哈希值)

上传时间 CPython 3.13 musllinux: musl 1.2+ ppc64le

xxhash-3.5.0-cp313-cp313-musllinux_1_2_i686.whl (203.4 kB 查看哈希值)

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

xxhash-3.5.0-cp313-cp313-musllinux_1_2_aarch64.whl (216.4 kB 查看哈希值)

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

xxhash-3.5.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (194.4 kB 查看哈希值)

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

xxhash-3.5.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl (428.3 kB 查看哈希值)

上传时间 CPython 3.13 manylinux: glibc 2.17+ s390x

xxhash-3.5.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (200.0 kB 查看哈希值)

上传时间: CPython 3.13 manylinux: glibc 2.17+ ppc64le

xxhash-3.5.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (220.9 kB 查看哈希值)

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

xxhash-3.5.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (207.9 kB 查看哈希值)

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

xxhash-3.5.0-cp313-cp313-macosx_11_0_arm64.whl (30.8 kB 查看哈希值)

上传时间: CPython 3.13 macOS 11.0+ ARM64

xxhash-3.5.0-cp313-cp313-macosx_10_13_x86_64.whl (31.8 kB 查看哈希值)

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

xxhash-3.5.0-cp312-cp312-win_arm64.whl (26.8 kB 查看哈希值)

上传时间: CPython 3.12 Windows ARM64

xxhash-3.5.0-cp312-cp312-win_amd64.whl (30.0 kB 查看哈希值)

上传时间: CPython 3.12 Windows x86-64

xxhash-3.5.0-cp312-cp312-win32.whl (30.2 kB 查看哈希值)

上传时间: CPython 3.12 Windows x86

xxhash-3.5.0-cp312-cp312-musllinux_1_2_x86_64.whl (192.0 kB 查看哈希值)

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

xxhash-3.5.0-cp312-cp312-musllinux_1_2_s390x.whl (414.7 kB 查看哈希值)

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

xxhash-3.5.0-cp312-cp312-musllinux_1_2_ppc64le.whl (210.3 kB 查看哈希值)

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

xxhash-3.5.0-cp312-cp312-musllinux_1_2_i686.whl (203.4 kB 查看哈希值)

上传于 CPython 3.12 musllinux: musl 1.2+ i686

xxhash-3.5.0-cp312-cp312-musllinux_1_2_aarch64.whl (216.3 kB 查看哈希值)

上传于 CPython 3.12 musllinux: musl 1.2+ ARM64

xxhash-3.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (194.4 kB 查看哈希值)

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

xxhash-3.5.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (428.3 kB 查看哈希值)

上传于 CPython 3.12 manylinux: glibc 2.17+ s390x

xxhash-3.5.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (200.0 kB 查看哈希值)

上传于 CPython 3.12 manylinux: glibc 2.17+ ppc64le

xxhash-3.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (221.0 kB 查看哈希值)

上传于 CPython 3.12 manylinux: glibc 2.17+ ARM64

xxhash-3.5.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (207.9 kB 查看哈希值)

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

xxhash-3.5.0-cp312-cp312-macosx_11_0_arm64.whl (30.8 kB 查看哈希值)

上传于 CPython 3.12 macOS 11.0+ ARM64

xxhash-3.5.0-cp312-cp312-macosx_10_9_x86_64.whl (32.0 kB 查看哈希值)

上传于 CPython 3.12 macOS 10.9+ x86-64

xxhash-3.5.0-cp311-cp311-win_arm64.whl (26.8 kB 查看哈希值)

上传于 CPython 3.11 Windows ARM64

xxhash-3.5.0-cp311-cp311-win_amd64.whl (30.0 kB 查看哈希值)

上传时间 CPython 3.11 Windows x86-64

xxhash-3.5.0-cp311-cp311-win32.whl (30.1 kB 查看哈希值)

上传时间 CPython 3.11 Windows x86

xxhash-3.5.0-cp311-cp311-musllinux_1_2_x86_64.whl (192.2 kB 查看哈希值)

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

xxhash-3.5.0-cp311-cp311-musllinux_1_2_s390x.whl (415.1 kB 查看哈希值)

上传时间 CPython 3.11 musllinux: musl 1.2+ s390x

xxhash-3.5.0-cp311-cp311-musllinux_1_2_ppc64le.whl (211.0 kB 查看哈希值)

上传时间 CPython 3.11 musllinux: musl 1.2+ ppc64le

xxhash-3.5.0-cp311-cp311-musllinux_1_2_i686.whl (203.6 kB 查看哈希值)

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

xxhash-3.5.0-cp311-cp311-musllinux_1_2_aarch64.whl (217.0 kB 查看哈希值)

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

xxhash-3.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (194.8 kB 查看哈希值)

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

xxhash-3.5.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (429.4 kB 查看哈希值)

上传时间 CPython 3.11 manylinux: glibc 2.17+ s390x

xxhash-3.5.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (201.2 kB 查看哈希值)

上传时间 CPython 3.11 manylinux: glibc 2.17+ ppc64le

xxhash-3.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (221.6 kB 查看哈希值)

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

xxhash-3.5.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (208.5 kB 查看哈希值)

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

xxhash-3.5.0-cp311-cp311-macosx_11_0_arm64.whl (30.8 kB 查看哈希值)

上传于 CPython 3.11 macOS 11.0+ ARM64

xxhash-3.5.0-cp311-cp311-macosx_10_9_x86_64.whl (32.0 kB 查看哈希值)

上传于 CPython 3.11 macOS 10.9+ x86-64

xxhash-3.5.0-cp310-cp310-win_arm64.whl (26.8 kB 查看哈希值)

上传于 CPython 3.10 Windows ARM64

xxhash-3.5.0-cp310-cp310-win_amd64.whl (30.0 kB 查看哈希值)

上传于 CPython 3.10 Windows x86-64

xxhash-3.5.0-cp310-cp310-win32.whl (30.1 kB 查看哈希值)

上传于 CPython 3.10 Windows x86

xxhash-3.5.0-cp310-cp310-musllinux_1_2_x86_64.whl (191.4 kB 查看哈希值)

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

xxhash-3.5.0-cp310-cp310-musllinux_1_2_s390x.whl (414.2 kB 查看哈希值)

上传于 CPython 3.10 musllinux: musl 1.2+ s390x

xxhash-3.5.0-cp310-cp310-musllinux_1_2_ppc64le.whl (210.1 kB 查看哈希值)

上传于 CPython 3.10 musllinux: musl 1.2+ ppc64le

xxhash-3.5.0-cp310-cp310-musllinux_1_2_i686.whl (202.7 kB 查看哈希值)

上传于 CPython 3.10 musllinux: musl 1.2+ i686

xxhash-3.5.0-cp310-cp310-musllinux_1_2_aarch64.whl (216.3 kB 查看哈希值)

上传于 CPython 3.10 musllinux: musl 1.2+ ARM64

xxhash-3.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (194.1 kB 查看哈希)

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

xxhash-3.5.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl (428.5 kB 查看哈希)

上传于 CPython 3.10 manylinux: glibc 2.17+ s390x

xxhash-3.5.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (200.4 kB 查看哈希)

上传于 CPython 3.10 manylinux: glibc 2.17+ ppc64le

xxhash-3.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (220.9 kB 查看哈希)

上传于 CPython 3.10 manylinux: glibc 2.17+ ARM64

xxhash-3.5.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (207.7 kB 查看哈希)

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

xxhash-3.5.0-cp310-cp310-macosx_11_0_arm64.whl (30.8 kB 查看哈希)

上传于 CPython 3.10 macOS 11.0+ ARM64

xxhash-3.5.0-cp310-cp310-macosx_10_9_x86_64.whl (32.0 kB 查看哈希)

上传于 CPython 3.10 macOS 10.9+ x86-64

xxhash-3.5.0-cp39-cp39-win_arm64.whl (26.8 kB 查看哈希)

上传于 CPython 3.9 Windows ARM64

xxhash-3.5.0-cp39-cp39-win_amd64.whl (30.0 kB 查看哈希)

上传于 CPython 3.9 Windows x86-64

xxhash-3.5.0-cp39-cp39-win32.whl (30.1 kB 查看哈希)

上传于 CPython 3.9 Windows x86

xxhash-3.5.0-cp39-cp39-musllinux_1_2_x86_64.whl (191.2 kB 查看哈希值)

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

xxhash-3.5.0-cp39-cp39-musllinux_1_2_s390x.whl (413.9 kB 查看哈希值)

上传于 CPython 3.9 musllinux: musl 1.2+ s390x

xxhash-3.5.0-cp39-cp39-musllinux_1_2_ppc64le.whl (209.9 kB 查看哈希值)

上传于 CPython 3.9 musllinux: musl 1.2+ ppc64le

xxhash-3.5.0-cp39-cp39-musllinux_1_2_i686.whl (202.4 kB 查看哈希值)

上传于 CPython 3.9 musllinux: musl 1.2+ i686

xxhash-3.5.0-cp39-cp39-musllinux_1_2_aarch64.whl (216.0 kB 查看哈希值)

上传于 CPython 3.9 musllinux: musl 1.2+ ARM64

xxhash-3.5.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (193.9 kB 查看哈希值)

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

xxhash-3.5.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl (428.2 kB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.17+ s390x

xxhash-3.5.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (200.0 kB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.17+ ppc64le

xxhash-3.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (220.6 kB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.17+ ARM64

xxhash-3.5.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (207.4 kB 查看哈希值)

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

xxhash-3.5.0-cp39-cp39-macosx_11_0_arm64.whl (30.8 kB 查看哈希值)

上传于 CPython 3.9 macOS 11.0+ ARM64

xxhash-3.5.0-cp39-cp39-macosx_10_9_x86_64.whl (32.0 kB 查看哈希值)

上传于 CPython 3.9 macOS 10.9+ x86-64

xxhash-3.5.0-cp38-cp38-win_amd64.whl (30.0 kB 查看哈希值)

上传于 CPython 3.8 Windows x86-64

xxhash-3.5.0-cp38-cp38-win32.whl (30.1 kB 查看哈希值)

上传于 CPython 3.8 Windows x86

xxhash-3.5.0-cp38-cp38-musllinux_1_2_x86_64.whl (191.5 kB 查看哈希值)

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

xxhash-3.5.0-cp38-cp38-musllinux_1_2_s390x.whl (414.3 kB 查看哈希值)

上传于 CPython 3.8 musllinux: musl 1.2+ s390x

xxhash-3.5.0-cp38-cp38-musllinux_1_2_ppc64le.whl (210.2 kB 查看哈希值)

上传于 CPython 3.8 musllinux: musl 1.2+ ppc64le

xxhash-3.5.0-cp38-cp38-musllinux_1_2_i686.whl (202.8 kB 查看哈希值)

上传于 CPython 3.8 musllinux: musl 1.2+ i686

xxhash-3.5.0-cp38-cp38-musllinux_1_2_aarch64.whl (216.3 kB 查看哈希值)

上传于 CPython 3.8 musllinux: musl 1.2+ ARM64

xxhash-3.5.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (194.6 kB 查看哈希值)

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

xxhash-3.5.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl (429.3 kB 查看哈希值)

上传于 CPython 3.8 manylinux: glibc 2.17+ s390x

xxhash-3.5.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (201.1 kB 查看哈希值)

上传于 CPython 3.8 manylinux: glibc 2.17+ ppc64le

xxhash-3.5.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (221.4 kB 查看哈希值)

上传于 CPython 3.8 manylinux: glibc 2.17+ ARM64

xxhash-3.5.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (208.4 kB 查看哈希值)

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

xxhash-3.5.0-cp38-cp38-macosx_11_0_arm64.whl (30.8 kB 查看哈希值)

上传于 CPython 3.8 macOS 11.0+ ARM64

xxhash-3.5.0-cp38-cp38-macosx_10_9_x86_64.whl (32.0 kB 查看哈希值)

上传于 CPython 3.8 macOS 10.9+ x86-64

xxhash-3.5.0-cp37-cp37m-win_amd64.whl (30.0 kB 查看哈希值)

上传于 CPython 3.7m Windows x86-64

xxhash-3.5.0-cp37-cp37m-win32.whl (30.1 kB 查看哈希值)

上传于 CPython 3.7m Windows x86

xxhash-3.5.0-cp37-cp37m-musllinux_1_2_x86_64.whl (191.5 kB 查看哈希值)

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

xxhash-3.5.0-cp37-cp37m-musllinux_1_2_s390x.whl (414.5 kB 查看哈希值)

上传于 CPython 3.7m musllinux: musl 1.2+ s390x

xxhash-3.5.0-cp37-cp37m-musllinux_1_2_ppc64le.whl (210.1 kB 查看哈希值)

上传于 CPython 3.7m musllinux: musl 1.2+ ppc64le

xxhash-3.5.0-cp37-cp37m-musllinux_1_2_i686.whl (202.8 kB 查看哈希值)

上传于 CPython 3.7m musllinux: musl 1.2+ i686

xxhash-3.5.0-cp37-cp37m-musllinux_1_2_aarch64.whl (216.3 kB 查看哈希值)

上传于 CPython 3.7m musllinux: musl 1.2+ ARM64

xxhash-3.5.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (194.7 kB 查看哈希值)

上传于 CPython 3.7m manylinux: glibc 2.17+ x86-64

xxhash-3.5.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl (429.2 kB 查看哈希值)

上传于 CPython 3.7m manylinux: glibc 2.17+ s390x

xxhash-3.5.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (201.0 kB 查看哈希值)

上传于 CPython 3.7m manylinux: glibc 2.17+ ppc64le

xxhash-3.5.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (221.3 kB 查看哈希值)

上传于 CPython 3.7m manylinux: glibc 2.17+ ARM64

xxhash-3.5.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (208.3 kB 查看哈希值)

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

xxhash-3.5.0-cp37-cp37m-macosx_10_9_x86_64.whl (31.8 kB 查看哈希值)

上传于 CPython 3.7m macOS 10.9+ x86-64

由以下支持