Cython绑定和Python接口到trimAl,一个自动对齐修剪的工具。
项目描述
🐍✂️ PytrimAl 
Cython 绑定和 trimAl 的 Python 接口,trimAl 是一个自动化比对修剪工具。 现在支持 SIMD!
⚠️ 此软件包基于 trimAl 2.0 的发布候选版本,结果可能在不同版本之间或与 trimAl 1.4 的结果不一致。
🗺️ 概述
PytrimAl 是一个 Python 模块,它使用 trimAl 和 Cython 提供绑定。它实现了一个用户友好的、Pythonic 的接口来使用 trimAl 的不同修剪方法,并直接访问结果。它与 trimAl 内部交互,具有以下优点
- 单一依赖:PytrimAl 作为 Python 包分发,因此您可以将它作为依赖项添加到项目中,无需担心 trimAl 二进制文件是否在最终用户机器上存在。
- 无中间文件:所有操作都在内存中完成,在您控制的 Python 对象中进行,因此您无需通过子进程和临时文件调用 trimAl CLI。可以直接从 Python 代码创建
Alignment
对象。 - 友好的接口:不同的修剪方法实现为可以独立配置的 Python 类。
- 错误管理:trimAl 中发生的错误会透明地转换为 Python 异常,包括一个包含有用错误消息的信息。
- 更好的性能:PytrimAl 使用 SIMD 指令来计算如成对序列相似性之类的统计数据。这使得对于大量序列的比对整个修剪过程变得更快,但代价是略微更高的内存消耗。
📋 路线图
以下功能是可用的或正在考虑实现
- 自动修剪:支持使用 trimAl 中实现的自动启发式方法之一修剪比对。
- 手动修剪:支持使用为每个残基位置手动定义的保守性和间隙阈值修剪比对。
- 重叠修剪:使用残基和序列重叠修剪序列,以排除保守性最小的区域。
- 代表性修剪:从比对中仅选择代表性序列,无论是使用固定数量还是最大身份阈值。
- 从磁盘加载比对:根据文件名从磁盘加载比对。
- 从文件对象加载比对:从 Python 文件对象 加载比对,而不是本地文件系统上的文件。
- 从 Python 创建比对:从存储在 Python 字符串中的序列集合创建比对。
- 将比对格式化到磁盘:将比对写入文件,给定一个支持文件格式之一的文件名。
- 将比对格式化到文件对象:将比对写入文件对象,使用支持文件格式之一。
- 反向翻译:将蛋白质比对反向翻译以在基因组空间中对齐序列。
- 备选相似性矩阵:指定用于对齐的备选相似性矩阵(而不是 BLOSUM62)。
- 创建相似性矩阵:从头开始使用 Python 代码创建相似性矩阵。
- 手动方法窗口:在手动方法中使用滑动窗口计算统计数据。
🔧 安装
PytrimAl 可用于所有现代版本(3.6+),没有外部依赖。
可以直接从 PyPI 安装,PyPI 上托管一些针对 x86-64 架构(Linux/OSX)和 Aarch64 架构(仅限 Linux)的预构建轮以及用于使用 Cython 从源代码编译所需的代码
$ pip install pytrimal
否则,pytrimal 也可作为 Bioconda 软件包提供
$ conda install -c bioconda pytrimal
💡 示例
从磁盘上的文件加载一个 Alignment
,并使用 strictplus 方法对其进行修剪,然后打印出作为 Clustal 块的 TrimmedAlignment
。
from pytrimal import Alignment, AutomaticTrimmer
ali = Alignment.load("pytrimal/tests/data/example.001.AA.clw")
trimmer = AutomaticTrimmer(method="strictplus")
trimmed = trimmer.trim(ali)
for name, seq in zip(trimmed.names, trimmed.sequences):
print(name.decode().rjust(6), seq)
这将输出以下内容
Sp8 GIVLVWLFPWNGLQIHMMGII
Sp10 VIMLEWFFAWLGLEINMMVII
Sp26 GLFLAAANAWLGLEINMMAQI
Sp6 GIYLSWYLAWLGLEINMMAII
Sp17 GFLLTWFQLWQGLDLNKMPVF
Sp33 GLHMAWFQAWGGLEINKQAIL
然后可以使用 dump
方法将修剪后的比对写入文件或文件对象。例如,将结果保存为 PIR 格式 到名为 example.trimmed.pir
的文件中。
trimmed.dump("example.trimmed.pir", format="pir")
🧶 线程安全
Trimmer 对象是线程安全的,并且 trim
方法是可重入的。这意味着您可以使用单个 trimmer 对象通过 ThreadPool
并行批量处理比对。
import glob
import multiprocessing.pool
from pytrimal import Alignment, AutomaticTrimmer
trimmer = AutomaticTrimmer()
alignments = map(Alignment.load, glob.iglob("pytrimal/tests/data/*.fasta"))
with multiprocessing.pool.ThreadPool() as pool:
trimmed_alignments = pool.map(trimmer.trim, alignments)
⏱️ 基准测试
基准测试在 i7-10710U CPU @ 1.10GHz 上运行,使用单个核心来计时计算多个统计量,在来自 example.014.AA.EggNOG.COG0591.fasta
的可变序列数量上,这是一个包含 3583 个序列和 7287 列的对齐。
每个图表都衡量单个 trimAl 统计量的计算时间(有关更多信息,请参阅 在线文档的统计页面)。
None
曲线显示使用内部 trimAl 2.0 代码的时间,Generic
曲线显示具有一些更多优化的通用 C 实现的时间,而 SSE
曲线显示使用具有 SIMD 实现的统计量计算专用类的耗时。
💭 反馈
⚠️ 问题跟踪器
发现了错误?有增强请求?如果您需要报告或询问某些内容,请前往 GitHub 问题跟踪器。如果您正在提交错误报告,请尽量提供有关问题的尽可能多的信息,并尝试在简单、易于复现的情况下重现相同的错误。
🏗️ 贡献
欢迎贡献!有关更多详细信息,请参阅 CONTRIBUTING.md
。
📋 变更日志
本项目遵循 语义版本控制,并按 Keep a Changelog 格式提供 变更日志。
⚖️ 许可证
本库根据 GNU 通用公共许可证 v3.0 提供。trimAl 由 trimAl 团队 开发,并按 GPLv3 许可证分发。有关更多信息,请参阅 vendor/trimal/LICENSE
。
本项目与 trimAl 作者 无关联、赞助或任何形式的背书。该项目由 Martin Larralde 在 欧洲分子生物学实验室 的 Zeller 团队 期间进行博士项目开发。
项目详情
哈希值 为 pytrimal-0.8.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 2c8faa9a5572712fbfb988c37ac06257263cc82dd8c6df3c55def4b747ea0e31 |
|
MD5 | 74d382f54fcc5e9e0f3785e7abdb577c |
|
BLAKE2b-256 | 5a08883ff55c128ec76a98f616c696f79fa39920bea4f3ae1d798fc643624aaf |
哈希值 为 pytrimal-0.8.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4a670eeabc930812a9290e891f53d408664875814edbb9f7469467860e031e62 |
|
MD5 | 01592be3c96e1df32a40d55ae1edd97b |
|
BLAKE2b-256 | 8cfc4515f2e4481caaba3db4711036c21f28de54dbffe2517dca26de7c915bba |
哈希值 为 pytrimal-0.8.0-pp310-pypy310_pp73-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6a0b073a72a7f87ba72ca14ab24ecc38de98578db4e27df3615aed471ce78232 |
|
MD5 | 18ec98249e2a7b2a40644d02b1114d30 |
|
BLAKE2b-256 | b6c8b2fd3e5e0bedef460c396b46b52b86b0f91a9a30ee402ec3cd2d9a134891 |
哈希值 为 pytrimal-0.8.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ae5ba21ef8f5bd2a0af4d30738eec65cd25c5cf80ffe3e7a66161be92b13bfc2 |
|
MD5 | fad725fdf595255270bbc13638562675 |
|
BLAKE2b-256 | 5019af1e0c55e5e3ddcef161dce3d4eb1a027e8f6fcc3ea7d83fe8a2203140c6 |
哈希值 为 pytrimal-0.8.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 0b385115fa3dca7a9b20e259c1b0d3738c2f2806e87155f504f083b1ca907b2f |
|
MD5 | dd1eb21aa146e7aa1210d5e7ff91205e |
|
BLAKE2b-256 | de2432b0f06db7a84a6087dd15215b584b1dda5023578b9a3a5ab12003e37b43 |
哈希值 为 pytrimal-0.8.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 5de6c2355d25cf089278ce6b9cae11e061ca80721c2e568b682623a8ed556680 |
|
MD5 | f39bd4fa052dc5ad0a5acf7c3ef4ff8f |
|
BLAKE2b-256 | c28db34840bb910e5fc57d6c69417e4563fd41c2a573d446507dabbbe06a3fd0 |
哈希值 为 pytrimal-0.8.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | fa5c9190a9a674e13cd1403014c198a42d32eb1ebb5a7c845829d953099a3987 |
|
MD5 | a956dd1003c18bff1db8e133da990436 |
|
BLAKE2b-256 | 1a0ad4f79134c43471b164dfaf79cd1f76c72d11e32094f5d67e2be69c4f7eab |
哈希值 为 pytrimal-0.8.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 37cc2c6c1a3711ad6891c5a423264d8ac6b522f01e54929bfca81fb16740e000 |
|
MD5 | 7b1362baac30bcb31d933dc982baf08b |
|
BLAKE2b-256 | d1f2dcab644e6b5b50f633cc4550a7deac8939f5efefd90e09e58d0cb43cb858 |
哈希值 为 pytrimal-0.8.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d570b46dff05b7205753594e0ffe2eec0c3f96333edb0054cf5c48a7596cbca4 |
|
MD5 | c282b7f952b8a6a38814f0960d18f8ec |
|
BLAKE2b-256 | 3214cfc60d89abc5b19f3ef37e0e6e867fc7542546bdd4dcf4855a3e89d8b278 |
哈希值 为 pytrimal-0.8.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 0643c1593639f1ce8c95fb1ffce63e8427418c6208792aa958ad145bec4f886b |
|
MD5 | c7b188153ab5890f349955fd74d3c60a |
|
BLAKE2b-256 | 4660669522573dace3d3dc4b276f3834c1abf7846b776e5886e6961416ed067b |
哈希值 为 pytrimal-0.8.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | fa5e95afd1889a362ea8aa90fdb02068da5512472395fd0365c1ce2f37d09b10 |
|
MD5 | 271fe5e9d3f3699a02ad49b3d0e853c4 |
|
BLAKE2b-256 | 364747f2e8e7f6309aafc7b9352d9df42cdcf15dc9014d56a426e8b7141e94b2 |
哈希值 for pytrimal-0.8.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6e2057cf974f13f9d1ad91e4f6daa5e1e306966d18cf3c403a7c4b32f2c2c8c6 |
|
MD5 | 7b3461ba73c6fad1d8623512cbd6b10c |
|
BLAKE2b-256 | 2803f09d81ca9b7b2129b478da199ed6cf928ab8b4bbf20ba91cb24fe2a45ebe |
哈希值 for pytrimal-0.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3a40d2172cd111e01e6639d2db9ba79aaf2e2069fd71e9c76a256b2c6ea8f63f |
|
MD5 | 138e7c70f1d53ad9ad884555cb753de9 |
|
BLAKE2b-256 | efff2d009901d38582338d8e5b0d08f5b62c6af0708b87a5a813b3a3fd35d782 |
哈希值 for pytrimal-0.8.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 5119e81a2747564b46542df7aedf02675efbe018af7cf8703164c17f08b96a31 |
|
MD5 | 286c0867748d9ff4d9351a58698599fd |
|
BLAKE2b-256 | 18e6381a58f1d0523d2f487fe1c44e3002765c787fcd751d29a3cc627eae65ad |
哈希值 for pytrimal-0.8.0-cp312-cp312-macosx_11_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f58a8241f36a4243d2e7f2eaccd9bc8b0385eecbba0fd92add0b90dc96a682a3 |
|
MD5 | 5cef91a9c101ae7ccba25c219e62c200 |
|
BLAKE2b-256 | f26752ea67034f98e21a5bfa04c0da74fc2fe822efb66b0ead612204ab0f402c |
哈希值 for pytrimal-0.8.0-cp312-cp312-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | c11c9702fc839ce1470e31ce4125304513d2231dfebd47564b7a93c45b38f4dc |
|
MD5 | b5f2874c877d7f3c825aaca39a65a2fb |
|
BLAKE2b-256 | 5bf5a8472b90ce8a428bf302788725097823e0bc2fa392e5d927ccc84c0e17c9 |
哈希值 for pytrimal-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 5b48a2acd40b7e50070c2e8ec9f5937db6987200850bfbfe6820f26380589944 |
|
MD5 | 014a124570c4d7899531208318bb5a39 |
|
BLAKE2b-256 | 7188ba4bb31508e4ffba4837b628a9243150df76716312543b58118181cab070 |
哈希值 for pytrimal-0.8.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 87a2502f8109da4652e77e7069862641dd8bea2281d1142ba2640e0726a67d6e |
|
MD5 | 358e6594c299ec1bd655c3fc0513b430 |
|
BLAKE2b-256 | 1e26f38bd31149cd98b37e059f702430aa8776f4e80da442d42828c56bbaf224 |
哈希值 for pytrimal-0.8.0-cp311-cp311-macosx_11_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d96c52b4b06649ae2b967a2192b5d6bce71e38fa6daba76fd85aaa23150517d6 |
|
MD5 | f0870ecb7d68f442a525c6b225c50904 |
|
BLAKE2b-256 | f04bb1265f957c5eb29d334c2b8769e77a27949a6deb3dab3cca7a6d663374d6 |
哈希值 for pytrimal-0.8.0-cp311-cp311-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d00dfdfa359c1fbb28839c9c0b40f0fc34da9ed0a15984947bc8fdfca9b36753 |
|
MD5 | a64ee31d0e9b49a05818157acfc9a8eb |
|
BLAKE2b-256 | 4a6e8b838a151e343b51388ae096f88d6c94f50e500943e7c56e86e5921b6f52 |
哈希值 for pytrimal-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f1c667b323e244e14e6ffc3eabf7662f4aac2de52bdecb4ddd76b54ee9fe37b1 |
|
MD5 | 119f0d741dc5b276f05d24e2f7624f66 |
|
BLAKE2b-256 | af8c454ea5ddcc2b68e0ea542835351fb7d234ffa9500a224a0124a615f409da |
哈希值 for pytrimal-0.8.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 91e0d846d6abbf222f352cb3dcb2cbeed80d307be715d8a2b4a7b7e0aed66cc2 |
|
MD5 | f674dc406fce8e64400f6ebc38b69c9a |
|
BLAKE2b-256 | e346253679914b65849c58ee0f68ca4cadcc9d73dec622431702e9daa99859f7 |
哈希值 for pytrimal-0.8.0-cp310-cp310-macosx_11_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 449eaca03cea469af817e8f018251b397ac1ab147169d8fa4f45eb23726cbfd2 |
|
MD5 | 721d70b854f58a90e05e6d6a0b89ec32 |
|
BLAKE2b-256 | f33fab3636f7c57da86669567c449ccc0d87fec01adb67f8bc53e2fa0617e993 |
哈希值 for pytrimal-0.8.0-cp310-cp310-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6763e2f1cc1e65dfbd0f5a22afd6e36d71042dd9543340550e10897e95810e53 |
|
MD5 | cf44209afcdf1566b23aadf23d8ba672 |
|
BLAKE2b-256 | 614815920fa6770b3e7910185e102f2c9bd6445bf89a293097f619e5fa51ecbf |
哈希值 for pytrimal-0.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ac466986243564895ca0761d5ce7a060fa34b11291bc8cc49c08bde22546189b |
|
MD5 | 434d79cb4420c3066363f4440d138877 |
|
BLAKE2b-256 | 522d1832de102ba08aa29ca6c01aff0cb0b4d787f44aaf3ff5456184b58731e1 |
哈希值 for pytrimal-0.8.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e512e334be6d95bba6837552bbaacde78cfd34e2ef6a81da73b0c3640d7c6ab3 |
|
MD5 | 4ba3edc34303b95103a55c0ef5196cce |
|
BLAKE2b-256 | 1606a87a3f9fb405592d374834e14c736225a4a24b433ba5f254ec2d9a972494 |
哈希值 for pytrimal-0.8.0-cp39-cp39-macosx_11_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 180035766f197d209b9e6ea7bf9b4ffc8aed447b30699525355cd9cc33a5cec4 |
|
MD5 | 99d704504e2d34cb42e27527a3653a6d |
|
BLAKE2b-256 | 54b26a448d00e48b1e89ee21e6157cd8fc515076e8a05fd4bccc1e84a3bd1b96 |
哈希值 for pytrimal-0.8.0-cp39-cp39-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1dd759b5f4e476e2fc4f0c246a6b609b2e52b3ff67a3183dbc4bb3ae642af04f |
|
MD5 | a78403edd3b4fb7720e3b62031b746e2 |
|
BLAKE2b-256 | 9764ff9ebde7301808437103cdea7c56c9bb53a28ad04de694d76abdb6bc3407 |
哈希值 for pytrimal-0.8.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 45b449cdf20a6fef48752abdefa1fffb4ce53fbe7a2283937264336b4718c66e |
|
MD5 | 11f1784f3c82c7d759aaab7ac398cc17 |
|
BLAKE2b-256 | 093d3b3eb2cd09ee97e5ef9fd29e5a414e3961a6e9b568e9785f4f61d0fcb660 |
哈希值 for pytrimal-0.8.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 5bbdd6d39c9b0d0ae652097f08255e89238dcd733969af7d475f1e76594c31dd |
|
MD5 | cdf84dd04275ef0afbe4f9a52b79560c |
|
BLAKE2b-256 | 962dc2bd6066fa72444911c70b1d7a6c213a9029bf3e43d117efba0069b0d4c4 |
哈希值 for pytrimal-0.8.0-cp38-cp38-macosx_11_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 2e801533408a1d8db1ea94efb5c607de3207a610a315283fe340549283d3f161 |
|
MD5 | 72a1b0f7669b29958f07f28e8a652597 |
|
BLAKE2b-256 | a16f83e3bb5a09e3ab874684c3d6d7751151aee47793a65d8d353cdc5873129e |
哈希值 for pytrimal-0.8.0-cp38-cp38-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d4183584aa33751536cd6ef1afed70e2d3d9ac12cea3d84d5bb7a2519ba41ad6 |
|
MD5 | f7ba06d1dc461dd5ed44d075fd2ff13e |
|
BLAKE2b-256 | 346bb76e79a42d9ef8d63e6b6fe2156b8214d3860231f9706c7ea94e4fb74368 |
哈希值 for pytrimal-0.8.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 5aaab829b7f3bea31438d8b0625ece088eb95095c27a467a540630c2e3823626 |
|
MD5 | 122736f94ace9bf76785d58f44b924e7 |
|
BLAKE2b-256 | 038ad82241da563d3e09188286776a19946ca57fff19923feb858ffa1d6f4caa |
哈希值 for pytrimal-0.8.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 713e7d01ef1a3667f5644b1835b52518dd92421d0f6b035812910457e0e37e23 |
|
MD5 | af7e97226ea0b8ff0f3aa74a518a6d79 |
|
BLAKE2b-256 | 4c0402ebc8cdf300e8f25b32fa7a04a59a99e467bc88865a096965e74ece605c |
哈希值 for pytrimal-0.8.0-cp37-cp37m-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a0b61597a424495dd9fa78eedf0beeb80b254d72c6b9a51f7efb28e29a0be0ad |
|
MD5 | 15935cd79cb1d4b84d45ccf1fd8aced3 |
|
BLAKE2b-256 | 31f828bb058f9936114671e509af3848f8cdefbde6710341f337b402391b1c7f |
哈希值 用于 pytrimal-0.8.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 87a202d727e1642a76224f04f0c9ba71264c8371ca68ac3fdb175e8d08c56729 |
|
MD5 | 2060a9b79e5aff56587db4b116e5db01 |
|
BLAKE2b-256 | b4d05bedaef479a74e21240ce532f1f2989f4dd27a677878983d3d60f9829ff8 |
哈希值 用于 pytrimal-0.8.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | c127aa8ed111c5e5287ce2764bec39772579c65a850647980f9bd2e996cb02c4 |
|
MD5 | 5746b448a2ebcd4d7dcf67f6774cf897 |
|
BLAKE2b-256 | 30f7c17b6543046ce18f78485ad685f25f84980c0ba987735c5ac179cb311dc5 |
哈希值 用于 pytrimal-0.8.0-cp36-cp36m-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6926f2880c9be5ac7e9ee2d71df3f0d79f5f4194ccd9a01d28f73ab3cde067a4 |
|
MD5 | b4747f01873c72eee6a2ea8b72867363 |
|
BLAKE2b-256 | de3cab9bc42f829e85965218f81aee5515bd1032969508fc8ea3b17855829dcb |