Skip to main content

Python bindings for WujiHandCpp

Project description

WujihandPy: Python bindings for WujiHandCpp

WujihandPy 是 WujiHandCpp 的 Python 绑定。

提供更简洁、更高效、更易用的接口与灵巧手设备进行交互。

安装

WujihandPy 支持 pip 一键安装:

pip install wujihandpy

对于 Linux 用户,需要额外配置 udev 规则以允许非 root 用户访问 USB 设备,可在终端中输入:

echo 'SUBSYSTEM=="usb", ATTR{idVendor}=="0483", MODE="0666"' |
sudo tee /etc/udev/rules.d/95-wujihand.rules &&
sudo udevadm control --reload-rules &&
sudo udevadm trigger

常见错误

若遇到报错 Could not find a version that satisfies the requirement,请尝试升级 pip:

python3 -m pip install --upgrade pip

然后使用新的pip重新安装:

python3 -m pip install wujihandpy

支持的 CPU 架构

  • x86_64
  • ARM64

最低系统要求 (Linux)

glibc 2.28+

使用 glibc 2.28 或更高版本的 Linux 发行版:

  • Debian 10+
  • Ubuntu 18.10+
  • Fedora 29+
  • CentOS/RHEL 8+

Python 3.8+

支持以下 Python 版本:

  • Python 3.8-3.14

最低系统要求 (Windows)

WujihandPy 目前暂不支持 Windows,我们会尽快推进相关支持。

示例代码

所有示例代码均位于 example 目录下。

部分参考 API

导入模块

import wujihandpy
import numpy as np

连接至灵巧手

hand = wujihandpy.Hand()

读数据

def read_<dataname>(self) -> np.<datatype>
def read_<dataname>(self) -> np.array<datatype> # For bulk-read

所有可使用的数据均定义在 wujihandpy/_core.pyi 中。

例如,读取灵巧手的上电运行时间(us):

time = hand.read_system_time()

除整手唯一的数据外,每个关节也有自己的数据,数据名称均以 joint 作为开头。

例如,读取第1个手指(食指),第0个关节的当前位置数据:

position = hand.finger(1).joint(0).read_joint_position()

关节角度为 np.float64 类型,单位为弧度,零点和正方向与 URDF文件 中定义的相同。

用一条指令读取多个数据也是可行的,这被称为批量读 (Bulk-Read)

例如,以下指令读取整手所有(20个)关节的当前位置数据:

positions = hand.read_joint_position()

进行批量读时,函数返回包含所有数据的 np.ndarray[np.float64]

>>> print(positions)
[[ 0.975  0.523  0.271 -0.45 ]
 [ 0.382  0.241 -0.003 -0.275]
 [-0.299  0.329  0.067 -0.286]
 [-0.122  0.228  0.315 -0.178]
 [ 0.205  0.087  0.288 -0.149]]

read 函数会阻塞,直到读取完成。保证当函数返回时,读取一定成功。

写数据

写数据拥有类似的 API,但多了一个参数用于传递目标值:

def write_<dataname>(self, np.<datatype>)
def write_<dataname>(self, np.array<datatype>) # For bulk-write

例如,写入单个关节的目标位置数据:

hand.finger(1).joint(0).write_joint_control_position(np.float64(0.8))

各关节的合法角度范围可通过以下 API 获取:

upper = (Hand | Finger | Joint).read_joint_upper_limit()
lower = (Hand | Finger | Joint).read_joint_lower_limit()

若写入的角度超出合法范围,会被自动限幅至最高/最低值。

批量写数据也是可行的,例如,批量为第一个手指写入目标位置数据:

hand.finger(1).write_joint_control_position(np.float64(0.8))

如果每个关节的目标值不同,可以传入一个包含所有目标值的 np.array

hand.finger(1).write_joint_control_position(
    np.array(
        #   J1    J2    J3    J4
        [0.8,  0.0,  0.8,  0.8],
        dtype=np.float64,
    )
)

write 函数会阻塞,直到写入完成。保证当函数返回时,写入一定成功。

异步读/写

读写函数均有对应的异步版本,函数名以 _async 作为后缀。

async def read_<dataname>_async(self) -> np.<datatype>
async def read_<dataname>_async(self) -> np.array<datatype> # For bulk-read
async def write_<dataname>_async(self, np.<datatype>)
async def write_<dataname>_async(self, np.array<datatype>)  # For bulk-write

异步接口需 await;等待期间不阻塞线程/事件循环,返回时保证读/写已经成功。

Unchecked 读/写

如果不关心读/写是否成功,可以使用 Unchecked 版本的读/写函数,函数名以 _unchecked 作为后缀。

def read_<dataname>_unchecked(self) -> None
def read_<dataname>_unchecked(self) -> None               # For bulk-read
def write_<dataname>_unchecked(self, np.<datatype>)
def write_<dataname>_unchecked(self, np.array<datatype>)  # For bulk-write

Unchecked 函数总是立即返回,不会阻塞,通常用于对实时性要求较高的场景。

Get

如果希望获取以往读/写的结果,可以使用 get 系列函数:

def get_<dataname>(self) -> np.<datatype>
def get_<dataname>(self) -> np.array<datatype> # For bulk-read

get 系列函数同样不会阻塞,它总是立即返回最近一次读取到的数据,无论该数据来自 readasync-read 还是 read-unchecked

如果尚未请求过该数据,或请求尚未成功,get 函数的返回值是未定义的(通常为0)。

PDO 写

默认的读/写方式均带有缓冲池,积攒一段数据后才进行传输,最高读/写频率无法超过 100Hz。

对于需要高频率实时控制关节位置(如 1kHz)的场景,需使用 PDO 非阻塞写接口。

hand.pdo_write_unchecked(np.float64(0.8))
# 或按 5x4 结构批量发送:
# hand.pdo_write_unchecked(np.array([...], dtype=np.float64))

PDO 启用前需特别配置,见 example/4.pdo.py

性能与优化

WujihandPy 在充分保证易用性的同时,尽可能优化了性能与效率。

我们强烈建议优先使用批量读/写以最大限度地发挥性能。

许可证

本项目采用 MIT 许可证,详情见 LICENSE 文件。

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

wujihandpy-0.4.4-cp314-cp314t-manylinux_2_28_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ x86-64

wujihandpy-0.4.4-cp314-cp314t-manylinux_2_28_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARM64

wujihandpy-0.4.4-cp314-cp314-manylinux_2_28_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

wujihandpy-0.4.4-cp314-cp314-manylinux_2_28_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

wujihandpy-0.4.4-cp313-cp313t-manylinux_2_28_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.28+ x86-64

wujihandpy-0.4.4-cp313-cp313t-manylinux_2_28_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.28+ ARM64

wujihandpy-0.4.4-cp313-cp313-manylinux_2_28_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

wujihandpy-0.4.4-cp313-cp313-manylinux_2_28_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

wujihandpy-0.4.4-cp312-cp312-manylinux_2_28_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

wujihandpy-0.4.4-cp312-cp312-manylinux_2_28_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

wujihandpy-0.4.4-cp311-cp311-manylinux_2_28_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

wujihandpy-0.4.4-cp311-cp311-manylinux_2_28_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

wujihandpy-0.4.4-cp310-cp310-manylinux_2_28_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

wujihandpy-0.4.4-cp310-cp310-manylinux_2_28_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

wujihandpy-0.4.4-cp39-cp39-manylinux_2_28_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

wujihandpy-0.4.4-cp39-cp39-manylinux_2_28_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ ARM64

wujihandpy-0.4.4-cp38-cp38-manylinux_2_28_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.28+ x86-64

wujihandpy-0.4.4-cp38-cp38-manylinux_2_28_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.28+ ARM64

File details

Details for the file wujihandpy-0.4.4-cp314-cp314t-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp314-cp314t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 aaa7ee7d2228743e947d9e07c951cfafc414169673ce869302923d1bbb810574
MD5 65b580ee886a275ec2e25cc291e6c170
BLAKE2b-256 6b7a2dacd7fa3df9837d8dec592c30c4c5d47dc9b07f31b96dfeeefada8fb5aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp314-cp314t-manylinux_2_28_x86_64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp314-cp314t-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp314-cp314t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3d1cf6797d80a8a941ede8e3a63edc5e9a00da559ce3e704b6dcac8f91aa1ef4
MD5 d8d02842d4ad9477423311604e2e3f8e
BLAKE2b-256 f77870cf2fbb2f6b1c51f98223d95a627ac67b2d5fa3c94bd7e0e96b691f8e6e

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp314-cp314t-manylinux_2_28_aarch64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4b8a6f73e222723474e9584de18bf426a528323e555dfb70df7107121dc49ce4
MD5 0dc43d5241a8b8fa2f9cc0c19e2a0a25
BLAKE2b-256 09226e2c3ba1016cb6c0849a1e69d05ed434d0a800afa248add7e6e9301324dc

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp314-cp314-manylinux_2_28_x86_64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp314-cp314-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9fe457a29d714732e822a562e5c90abd8ea95dff43f79e80ee6a39020c7d2432
MD5 f27fc9192cac7e17ca3ddcce736e10ac
BLAKE2b-256 4c4cc0488c49019889c4775839ee488a1b1db6abb687571ea524ac4eebb3c060

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp314-cp314-manylinux_2_28_aarch64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp313-cp313t-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp313-cp313t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 667952ddecdc992ea76d1144fd78d121a2a333612c1b7abd1cd1f44dde60b256
MD5 b82866a775f8eb3b2cd03240a3306af4
BLAKE2b-256 66138acb965247fae724394e12e57ab81704254df07e17beae693273bad7eb08

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp313-cp313t-manylinux_2_28_x86_64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp313-cp313t-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp313-cp313t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d0c025325efa45624326402a3faa6c2f0d735f2a60dc0062a37bb239e52c90d7
MD5 ddfe3eaf80d266cb82b1cc91c44525c6
BLAKE2b-256 dfa7c44968c940e665135b2a7ebef72be9e8d2e8d28e5a8bb1cc95642099f9b8

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp313-cp313t-manylinux_2_28_aarch64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 446eeb953e58ad81525b28eef498f9d4e7d479e1778585b7405f47df47fd6c4d
MD5 13b132e71dc8b9760f2526f1a9a6f2fc
BLAKE2b-256 1b1bf20015c43538536037e83c5fef84c64d0e1c082e69a074c2b246e96ea373

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2e91e0c66cb0e20fa3fbcf0f24c104af93928b38efa6040c9d5a6b3afefe22ab
MD5 80a00dbe8c9880cc277f9da86541724f
BLAKE2b-256 86f7e9a0df597b5678bdcf1f49e26ccb03aaff91597afca6db0c26112a4841ec

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b5d9ab66631c3e1877623666418ff9328af356983b2f6216b4984f887db1492e
MD5 3d78879b024538f928b5ab3fcb41e71d
BLAKE2b-256 a2a3c421111bf10325790d804032da6cc6cff430e2ea83cf169deac98a8a0db3

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 52d87fc702eb765bb1c1fd92e28ee0a54fda51fa0664eb7e61b572101a1dd53c
MD5 df74581cf31fb3f54b2320786ec7cb8c
BLAKE2b-256 c9ab9825ebf7d6ea9edb0b0bde3be93c102d3658dddd2cf58025f760f4b62ae2

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp312-cp312-manylinux_2_28_aarch64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bfd277fb59c8a3e8760e678b68e46807aa9475fe58495a7925c3f0b54ee6adac
MD5 4ddd3ad6cd47306104cf3dbc704abe67
BLAKE2b-256 1795ee01599cc3e4596a48331725f152bdf5b4f741f3b7453c820d88679adbf2

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d60285c1e6b02e44c6762db27bc4e3e7f334738ec37f4c232c92259021ff6b22
MD5 a6f25be600aec369d5f45e3c8428b6d9
BLAKE2b-256 2e3650910c46f41045c0a80e68a3922387a1cf74b9ab855f41dea9b369cbf25f

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp311-cp311-manylinux_2_28_aarch64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8b036bf5e96ee8ddd001906a31cb08d333dfe78b3afdfceb0003aaa09e203d89
MD5 135f155246486199dc405d22e0dd3ff9
BLAKE2b-256 89943388a7236401f4ade539401632e47b44e4fb38beafc9552ae2eacf16900a

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 cea32e2e01410da748ff111322fa3c2858e51b02ef74caa0dd1c60ae7142b438
MD5 f16e1892b318233115af3edbf650ac73
BLAKE2b-256 c922363bd21bac093246883826129e3c10af38ed14c34885da5b261c4e7e53a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp310-cp310-manylinux_2_28_aarch64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1f455a03a33bde50a34e67be022f7fcf6e93f8c6a48e683c1e767852e9a0fe12
MD5 4ad4ec6674682fc847d33808cebd49b0
BLAKE2b-256 9ba12622a8d20cc384ee62c2835d35ba0dfef2b88014c57be684eaf133386e5c

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp39-cp39-manylinux_2_28_x86_64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp39-cp39-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp39-cp39-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 146ca6b8e4096b42f0e401ac172cb17ce7b268232aa27efacc03a132519f1272
MD5 8ea4c16232e95dc7682d29734d6cd6dd
BLAKE2b-256 f16fd22a3d4fb69e27ef645d56815e5c8d8f4e1c9b08037f6087872486be3e7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp39-cp39-manylinux_2_28_aarch64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp38-cp38-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp38-cp38-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6d366a3b07c0970ff5bd8fbf75011edd395c2ca23685c8fb36831540d277c04a
MD5 e0506edda5f01f48561229653108d8eb
BLAKE2b-256 87e02a99a0bb7a9d871605a6acca2d65f27c5d4a673e51e292ba5f55e474ff10

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp38-cp38-manylinux_2_28_x86_64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wujihandpy-0.4.4-cp38-cp38-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for wujihandpy-0.4.4-cp38-cp38-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e3a6e2a85484112193d109d8d2d242b44a6efdf482cb01167ef882bc8f7476f9
MD5 d75be8f726faf23023e649f2837883a6
BLAKE2b-256 b5f3f9f56e9ad40de695adb1c926e76cae0314fe15fc6f67999b4594fb14c9f8

See more details on using hashes here.

Provenance

The following attestation bundles were made for wujihandpy-0.4.4-cp38-cp38-manylinux_2_28_aarch64.whl:

Publisher: release-package.yml on Wuji-Technology-Co-Ltd/wujihandpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page