Skip to main content

String algorithms

Project description

PyPI version Downloads Test Build and upload codecov DOI

pydivsufsort: bindings to libdivsufsort

pydivsufsort prebuilds libdivsufsort as a shared library and includes it in a Python package with bindings.

Features:

  • bindings to divsufsort that return numpy arrays
  • handle almost any integer data type (e.g. int64) and not only char
  • additional string algorithms

Installation

On Linux, macOS and Windows:

python -m pip install pydivsufsort

We provide precompiled wheels for common systems using cibuildwheel, and a source distribution for Unix systems. Manual compilation on Windows might require some tweaking, please create an issue.

Usage

Using String Inputs

import numpy as np
from pydivsufsort import divsufsort, kasai

string_inp = "banana$"
string_suffix_array = divsufsort(string_inp)
string_lcp_array = kasai(string_inp, string_suffix_array)
print(string_suffix_array, string_lcp_array)
# [6 5 3 1 0 4 2] [0 1 3 0 0 2 0]

Using Integer Inputs

import numpy as np
from pydivsufsort import divsufsort, kasai

string_inp = "banana$"

# Convert the string input to integers first
int_inp = np.unique(np.array(list(string_inp)), return_inverse=True)[1]
int_suffix_array = divsufsort(int_inp)
int_lcp_array = kasai(int_inp, int_suffix_array)
print(int_suffix_array, int_lcp_array)
# [6 5 3 1 0 4 2] [0 1 3 0 0 2 0]

Using Multiple Sentinel Characters Witin A String

import numpy as np
from pydivsufsort import divsufsort, kasai

sentinel_inp = "a$banana#and@a*bandana+"
sentinel_suffix_array = divsufsort(sentinel_inp)
sentinel_lcp_array = kasai(sentinel_inp, sentinel_suffix_array)
print(sentinel_suffix_array, sentinel_lcp_array)
# [ 8  1 14 22 12  7  0 13 21  5 19  3  9 16  2 15 11 18  6 20  4 10 17] [0 0 0 0 0 1 1 1 1 3 3 2 3 0 3 0 1 0 2 2 1 2 0]

Development

You can install locally with

pip install -e .

A useful command to iterate quickly when changing Cython code is

python setup.py build_ext --inplace && pytest -s

Profiling

Profiling can be activated with the environment variable PROFILE:

PROFILE=1 python setup.py build_ext --inplace && pytest -s

Here is an example with line_profiler (requires pip install "line_profiler<4"):

import line_profiler
from pydivsufsort import common_substrings
from pydivsufsort.stringalg import (
    _common_substrings,
    repeated_substrings,
)

s1 = "banana" * 10000
s2 = "ananas" * 10000

func = common_substrings
profile = line_profiler.LineProfiler(func)
profile.add_function(_common_substrings)
profile.add_function(repeated_substrings)
profile.runcall(func, s1, s2, limit=15)
profile.print_stats()

Testing

pytest

Technical details (for performance tweaks)

libdivsufsort is compiled in both 32 and 64 bits, as the 32 bits version is faster. pydivsufsort automatically chooses to use the 32 bits version when possible (aka when the input size is less than 2**31-1).

For best performance, use contiguous arrays. If you have a sliced array, pydivsufsort converts it automatically with numpy.ascontiguousarray.

The precompiled libraries use OpenMP. You can disable it by setting the env variable OMP_NUM_THREADS=1, and it will yield the same performance as the version compiled without OpenMP

The original libdivsufsort only supports char as the base type. pydivsufsort can handle arrays of any integer type (even signed), by encoding each element as multiple chars, which makes the computation slower. If your values use an integer type that is bigger than required, but they span over a small contiguous range, pydivsufsort will automatically change their type (see #6).

Acknowledgements

Citing

If you have used this software in a scientific publication, please cite it using the following BibLaTeX code:

@software{pydivsufsort,
  author       = {Louis Abraham},
  title        = {pydivsufsort},
  year         = 2023,
  publisher    = {Zenodo},
  doi          = {10.5281/zenodo.7932458},
  url          = {https://github.com/louisabraham/pydivsufsort}
}

Project details


Download files

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

Source Distribution

pydivsufsort-0.0.8.tar.gz (237.2 kB view details)

Uploaded Source

Built Distributions

pydivsufsort-0.0.8-cp311-cp311-win_amd64.whl (226.3 kB view details)

Uploaded CPython 3.11 Windows x86-64

pydivsufsort-0.0.8-cp311-cp311-win32.whl (187.1 kB view details)

Uploaded CPython 3.11 Windows x86

pydivsufsort-0.0.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

pydivsufsort-0.0.8-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (1.7 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686

pydivsufsort-0.0.8-cp311-cp311-macosx_10_9_x86_64.whl (277.0 kB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

pydivsufsort-0.0.8-cp310-cp310-win_amd64.whl (223.9 kB view details)

Uploaded CPython 3.10 Windows x86-64

pydivsufsort-0.0.8-cp310-cp310-win32.whl (187.5 kB view details)

Uploaded CPython 3.10 Windows x86

pydivsufsort-0.0.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

pydivsufsort-0.0.8-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (1.7 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686

pydivsufsort-0.0.8-cp310-cp310-macosx_10_9_x86_64.whl (278.6 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

pydivsufsort-0.0.8-cp39-cp39-win_amd64.whl (225.5 kB view details)

Uploaded CPython 3.9 Windows x86-64

pydivsufsort-0.0.8-cp39-cp39-win32.whl (188.7 kB view details)

Uploaded CPython 3.9 Windows x86

pydivsufsort-0.0.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

pydivsufsort-0.0.8-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (1.6 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686

pydivsufsort-0.0.8-cp39-cp39-macosx_10_9_x86_64.whl (280.2 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

pydivsufsort-0.0.8-cp38-cp38-win_amd64.whl (226.3 kB view details)

Uploaded CPython 3.8 Windows x86-64

pydivsufsort-0.0.8-cp38-cp38-win32.whl (188.9 kB view details)

Uploaded CPython 3.8 Windows x86

pydivsufsort-0.0.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

pydivsufsort-0.0.8-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (1.7 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686

pydivsufsort-0.0.8-cp38-cp38-macosx_10_9_x86_64.whl (276.9 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

pydivsufsort-0.0.8-cp37-cp37m-win_amd64.whl (220.9 kB view details)

Uploaded CPython 3.7m Windows x86-64

pydivsufsort-0.0.8-cp37-cp37m-win32.whl (186.8 kB view details)

Uploaded CPython 3.7m Windows x86

pydivsufsort-0.0.8-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

pydivsufsort-0.0.8-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl (1.4 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ i686

pydivsufsort-0.0.8-cp37-cp37m-macosx_10_9_x86_64.whl (272.1 kB view details)

Uploaded CPython 3.7m macOS 10.9+ x86-64

pydivsufsort-0.0.8-cp36-cp36m-win_amd64.whl (230.2 kB view details)

Uploaded CPython 3.6m Windows x86-64

pydivsufsort-0.0.8-cp36-cp36m-win32.whl (195.0 kB view details)

Uploaded CPython 3.6m Windows x86

pydivsufsort-0.0.8-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ x86-64

pydivsufsort-0.0.8-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl (1.5 MB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ i686

pydivsufsort-0.0.8-cp36-cp36m-macosx_10_9_x86_64.whl (271.8 kB view details)

Uploaded CPython 3.6m macOS 10.9+ x86-64

File details

Details for the file pydivsufsort-0.0.8.tar.gz.

File metadata

  • Download URL: pydivsufsort-0.0.8.tar.gz
  • Upload date:
  • Size: 237.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for pydivsufsort-0.0.8.tar.gz
Algorithm Hash digest
SHA256 26aae2ad8d0bc57bb65aaced5d2db5c9e335405ee54d580ae0de32a28126b35e
MD5 297c6e3d646598594b8afc50e6380f5e
BLAKE2b-256 ff4a3f764fcc882c00bc2a735594ae73826ed5a50a014b6b70f5188bd25e88fd

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 a1f9a9b6598a1979611442e9d07913ae96dbcdc534e06a1fde3eeb526b97505d
MD5 acdb34faadbd1aea98fe2782d81d30c2
BLAKE2b-256 904c2545100d5a8a082685319a8e71f4e140d67206fea02661df5714c70bfaac

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp311-cp311-win32.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 042bdeb900da99cfd54cfdbc89a0e45d19c250228d8b5ca525c6d1366273fee8
MD5 d01d611a18d9875c87e4cc91d865af04
BLAKE2b-256 e963ebbd024a2d02d7238903ad7774fb7c9497f4ab8ad21d9fa7c2c14aebc88c

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 88f5660f46406340e5cd71fe4cb5fbad6b0185ba3a92b60a386e75efc06d59a4
MD5 b0c7395f2516713e690ca1ba0a8d5590
BLAKE2b-256 be722c50c80c2018885925e6e448377ec10b7376a33b85564ea194d3ba34e8f2

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 c923f74e71ac8ca3c669e098f3065bd3327c77914956e13095cc8e66bfe07820
MD5 397558bb8e644ddf6fefc439620124d2
BLAKE2b-256 3aa836576925beab7a0d4ed5b7feb5678a54b47d555cfaa3d11004eee9341679

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b09794a10bceac10194034dbebb6c6e970fc89e1c7e6290da41015c5d3d75665
MD5 b64c0f6f7b4daf7cbf516be176d4a0cf
BLAKE2b-256 1d930920453e6616abb4077a50afbccc4d0d14d2ceb8c5f50a80e2c952ff2433

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 84641cdf2e40ee3593f19a1eb083a008cd20748a34843c08f32e2463f4f7415c
MD5 13fc9026df54292fdb187cd2e087d3ca
BLAKE2b-256 0166699a373aa6486b1b6b580d90e632b284450a5ae208b6c06a707d828cfe0f

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp310-cp310-win32.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 6fa58a574ac35d4279c5fc3b6e639f35968d560d08dec1cbfb9137e6862e7534
MD5 748dfe391f2d789bcb0f5dee4ffda5e3
BLAKE2b-256 43583b1585778074deec6deac63b4b3a1f17d57283a9b0f5808ccde5759ddaf0

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b75d64ed628c4c79847ccbd427b9409758334ea16e898116208797883b714ce1
MD5 fe59b6a11446a5393ab19df5a22f1030
BLAKE2b-256 ea3ee57a061969f715effa7bd9ccb7fbe0a3f264d4b05cab315e07232ed7fc53

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 7d12b5d4236d5b32c5db242d67ad27535ae9cb3106823261b47496b4ab407337
MD5 03884d9a951131c6bf171fd4e73cf08d
BLAKE2b-256 93a8475e9945fc58fe9c9f223070170f291c4bd55515845d71ba98658ce3c3f0

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 893ea26401dfa06cb23a88f25c3ff389eef6a0239a42cc2d8bc65e13625fe765
MD5 3dc0180bbd5d6bd60b8ec53757ab15ce
BLAKE2b-256 46484d80cd9c88690b0f768b356b8b14d43625d8ee939ccfdf6e56d02bd87e49

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 13167896d208d7987de4de787018a15065d046d9857fb7c3b32d01e860ac215f
MD5 42af04fee1a46d82932d211941412792
BLAKE2b-256 98a8a74bb7b6d1c479c6893ccd156edddf66d7986c600481a14bc48684e23649

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp39-cp39-win32.whl.

File metadata

  • Download URL: pydivsufsort-0.0.8-cp39-cp39-win32.whl
  • Upload date:
  • Size: 188.7 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for pydivsufsort-0.0.8-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 783d5544df37a3d380ea68ed04657f7462bc7212a137a7519fa8a35ff1ff20e1
MD5 6a3a0c191c3f02a20490a2b0970f5c1b
BLAKE2b-256 f502c48ae69289e6108d11f4c6a746e2b718b0379118b79d526083d73e2457cd

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8582abef2c32972b3f539fc857b5b9ee7b6e5286e2fa05817f399da8152cb5ea
MD5 c0ef2b742b6ba862685f2942e2bfbb4b
BLAKE2b-256 c02b1ec8ec75185e63d1aadef28653d2c0a6030fb0a69beae9210e358d8bb9cb

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 3872397b70e9cd7dc4398f4ab9dc6a16bece8d4baff89d1a651df0ff417c7c33
MD5 b6420cf7b8855fdbec8fef763aabe71b
BLAKE2b-256 d802c2e07e2d856d41de07d8e2d642685293e04cf83239c620d694fd9c430242

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 70555ee2a891b48541dcbf6213aaa30aa19cea79e896bfd300463376ac4ab055
MD5 83c03dd387f25e586a830e0fc15465c4
BLAKE2b-256 ea7db28125671df0a562ed5f7f3c694a3d45075d273ca33869f45a1e155ff2b5

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 c1fe459d52b22ede692c5160ccc13fd919e5de295792b6293d999dbbab1c6c28
MD5 10a058dbb6cae8231426f58e303557cc
BLAKE2b-256 c769cf1b5bb700cfb8bcac7c0aeed7de93884ab3c9456b91686fd7a0e461578c

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp38-cp38-win32.whl.

File metadata

  • Download URL: pydivsufsort-0.0.8-cp38-cp38-win32.whl
  • Upload date:
  • Size: 188.9 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for pydivsufsort-0.0.8-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 601797c67b1ed40c9bd122374601b66139b46ed797b45f930667cfa3c7825d79
MD5 bcb5d47c9b266d0586de94df285b5e72
BLAKE2b-256 b40407fbf9db400a6d1c4d2a790175a6414a7f0db3fbf02c5e80773600310ac8

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ba40e9fdf8767dab64fe3b39a7b2ec2d05558683a196b1de7dc8c19a2532b1d8
MD5 62aa40d8c4fd43305e92ebbbbae1059a
BLAKE2b-256 410dd2f50811663b6c6ab00632919e97be0c73d362af68228473b9981e64be33

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 27b8247e12c304fc5a48752d45d11ab15ad08867bfa93d13909326c34ddc4623
MD5 9bd4cccea8a155535acbee94ed443091
BLAKE2b-256 88c6f769c66c90720122a280d1554f1c7841eb3861e52acff93990e0e1ad343c

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 47f0562d1e95714430d0320a6a421f1356f0f253159a48a298be2fe9b18cf48d
MD5 5f291f949ba4c2e4207718ccc95287fd
BLAKE2b-256 e45f257a5dd2d59b8982f4b156d759fbe537fc6f094fbc9927824fa9355e20ac

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp37-cp37m-win_amd64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 a96c0b6be85c86c685d30e9af1f785ce20f8f7ab02f2ccb4562d846e0601e287
MD5 5d0e792150046fcc3fcd2a8f01331b46
BLAKE2b-256 e6534c85bb11bdda01754b62afe50ab022f889773782840ef1edb0bbe63fa7a4

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp37-cp37m-win32.whl.

File metadata

  • Download URL: pydivsufsort-0.0.8-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 186.8 kB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for pydivsufsort-0.0.8-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 a841ba64d663f70a1be199f2a7a25a4990dadf833edd95fb3c25616c0898343c
MD5 d49e8b6b1265401fd698921a12684885
BLAKE2b-256 34b417b1fa17c9683b86b5fcc0ed3e8bf9a9807b300cf7125deb7ac0789b52fb

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 24eb34ab33f2b055b96f1d9ee5356a06fd6b9b0256ead21b7dfe662cf59166db
MD5 b76d1b4339b35ffae2c413907a1850b2
BLAKE2b-256 ca474ad7aa5d2e4dde698d51682f42d0c4dc29b3c03fe764bada03d6b485d14f

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 d9be7960b05ea8d36cb868d1d5044434d2a00d07cdd102b5c65a28256a099c13
MD5 94faaa1355aae576848e99dee5f952f3
BLAKE2b-256 7a463b1fb8934aaca07442813b613974e4c97fd991007f250c4f9bb99935b38f

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 04ae1b2de5019312fc4fd1b611c866d04cf47295ccd14361ee8a33ab5f01813d
MD5 84e729c289247ef7182039cc1b48a39b
BLAKE2b-256 3dc6a49d58eaa1257c944a60efe02cc9fe20bb804de19f7797c61740fddf5b60

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp36-cp36m-win_amd64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 3fd01b29f7a59b327b3f0198afee4dc6f1e8773f4de639b823a44abd94f5173b
MD5 75b4344e5b7439139d95dfe1e9dec914
BLAKE2b-256 3d69f88a01babe9fbcefbfd76ebab027c5df5b058d8712c21d625972eb590ae9

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp36-cp36m-win32.whl.

File metadata

  • Download URL: pydivsufsort-0.0.8-cp36-cp36m-win32.whl
  • Upload date:
  • Size: 195.0 kB
  • Tags: CPython 3.6m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for pydivsufsort-0.0.8-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 aee22ff7572d582527349f3e708105222619bc5c9b4fd46114d8c8b2c2f10ccd
MD5 06e2d9882f3c64ee4d69c8cac70cb0b2
BLAKE2b-256 da3716f436e6e0acebe0c1ff0d2e795128dbd8cb7b7e2082bc82089996a737ab

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9df5cce0483c7b8a99f9df844ecbd400ebe5c69b1a5c2b2be91a5b0ba19b436d
MD5 d2bfa80050e8b6b16dce2126373e426b
BLAKE2b-256 bfb30d57c23d8ca94ecb00045f2b0698a8a3631b24458f43ac65fb662e2c4112

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 3812dde6ad7d7836f432fa656a023c73b74d844814f4843ebc0cf2b3915de62b
MD5 cfb158c822665217e5f95220871ddead
BLAKE2b-256 b4e6e1e9f6c42bba40b6ff4c54149c79701668cdf49ae4e5dce348fe6f9f1eaa

See more details on using hashes here.

File details

Details for the file pydivsufsort-0.0.8-cp36-cp36m-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pydivsufsort-0.0.8-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2b8885634cf0d9760521d6497b46aa7ae5fe8ea8f0c59e8588cbd102b172dff4
MD5 8b6f201f8aa48ceeeefee09d461d8b7d
BLAKE2b-256 e70b33fe597be8cf36a7a37eaee6cd540d61abc322aa38261c0f7076b68a2497

See more details on using hashes here.

Supported by

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