Skip to main content

Edit distance, Similarity and 2 sequence differences printing

Project description

Python C Extention 2 Sequence Compare

Upload pypi.org

Edit distance, Similarity and 2 sequence differences printing.

How to Install?

pip install cdiffer

Requirement

  • python3.6 or later

cdiffer.dist

Compute absolute Levenshtein distance of two strings.

Usage

dist(sequence, sequence)

Examples (it's hard to spell Levenshtein correctly):

Help on built-in function dist in module cdiffer:

dist(...)
    Compute absolute Levenshtein distance of two strings.

    dist(sequence, sequence)

    Examples (it's hard to spell Levenshtein correctly):

    >>> dist('coffee', 'cafe')
    4
    >>> dist(list('coffee'), list('cafe'))
    4
    >>> dist(tuple('coffee'), tuple('cafe'))
    4
    >>> dist(iter('coffee'), iter('cafe'))
    4
    >>> dist(range(4), range(5))
    1
    >>> dist('coffee', 'xxxxxx')
    12
    >>> dist('coffee', 'coffee')
    0

cdiffer.similar

Compute similarity of two strings.

Usage

similar(sequence, sequence)

The similarity is a number between 0 and 1, base on levenshtein edit distance.

Examples

>>> from cdiffer import similar
>>>
>>> similar('coffee', 'cafe')
0.6
>>> similar('hoge', 'bar')
0.0

cdiffer.differ

Find sequence of edit operations transforming one string to another.

Usage

differ(source_sequence, destination_sequence, diffonly=False, rep_rate=60)

Examples

>>> from cdiffer import differ
>>>
    >>> for x in differ('coffee', 'cafe'):
    ...     print(x)
    ...
    ['equal',   0, 0,   'c', 'c']
    ['delete',  1, None,'o',None]
    ['insert',  None, 1,None,'a']
    ['equal',   2, 2,   'f', 'f']
    ['delete',  3, None,'f',None]
    ['delete',  4, None,'e',None]
    ['equal',   5, 3,   'e', 'e']
    >>> for x in differ('coffee', 'cafe', diffonly=True):
    ...     print(x)
    ...
    ['delete',  1, None,'o',None]
    ['insert',  None, 1,None,'a']
    ['delete',  3, None,'f',None]
    ['delete',  4, None,'e',None]

    >>> for x in differ('coffee', 'cafe', rep_rate = 0):
    ...     print(x)
    ...
    ['equal',   0, 0,   'c', 'c']
    ['replace', 1, 1,   'o', 'a']
    ['equal',   2, 2,   'f', 'f']
    ['delete',  3, None,'f',None]
    ['delete',  4, None,'e',None]
    ['equal',   5, 3,   'e', 'e']
    >>> for x in differ('coffee', 'cafe', diffonly=True, rep_rate = 0):
    ...     print(x)
    ...
    ['replace', 1, 1,   'o', 'a']
    ['delete',  3, None,'f',None]
    ['delete',  4, None,'e',None]

cdiffer.compare

This Function is compare and prety printing 2 sequence data.

Usage

compare(source_sequence, destination_sequence, diffonly=False, rep_rate=60, condition_value=" ---> ")

Parameters :

arg1 -> iterable : left comare target data.
arg2 -> iterable : right comare target data.
keya -> callable one argument function : Using sort and compare with key about `a` object.
keyb -> callable one argument function : Using sort and compare with key about `a` object.
header -> bool : output data with header(True) or without header(False). <default True>
diffonly -> bool : output data with equal data(False) or without equal data(True). <default False>
rep_rate -> int: Threshold to be considered as replacement.(-1 ~ 100). -1: allways replacement.
startidx -> int: output record index starting number. <default `0`>
condition_value -> str : Conjunctions for comparison.
na_value -> str: if not found data when filled value.
delete_sign_value -> str: if deleted data when adding sign value.
insert_sign_value ->  str: if insert data when adding sign value.

Return : Lists of List

1st column -> matching rate (0 ~ 100).
2nd column -> matching tagname (unicode string).
3rd over   -> compare data.

Examples

In [1]: from cdiffer import compare
... compare('coffee', 'cafe')
[['tag', 'index_a', 'index_b', 'data'],
 ['equal', 0, 0, 'c'],
 ['insert', '-', 1, 'ADD ---> a'],
 ['delete', 1, '-', 'o ---> DEL'],
 ['equal', 2, 2, 'f'],
 ['delete', 3, '-', 'f ---> DEL'],
 ['equal', 4, 3, 'e'],
 ['delete', 5, '-', 'e ---> DEL']]

In [2]: compare([list("abc"), list("abc")], [list("abc"), list("acc"), list("xtz")], rep_rate=50)
[['tag', 'index_a', 'index_b', 'COL_00', 'COL_01', 'COL_02', 'COL_03'],
 ['equal', 0, 0, 'a', 'b', 'c'],
 ['replace', 1, 1, 'a', 'b ---> DEL', 'ADD ---> c', 'c'],
 ['insert', '-', 2, 'ADD ---> x', 'ADD ---> t', 'ADD ---> z']]

In [3]: compare(["abc", "abc"], ["abc", "acc", "xtz"], rep_rate=40)
[['tag', 'index_a', 'index_b', 'data'],
 ['equal', 0, 0, 'abc'],
 ['replace', 1, 1, 'abc ---> acc'],
 ['insert', '-', 2, 'ADD ---> xtz']]

In [4]: compare(["abc", "abc"], ["abc", "acc", "xtz"], rep_rate=50)
[['tag', 'index_a', 'index_b', 'data'],
 ['equal', 0, 0, 'abc'],
 ['replace', 1, 1, 'abc ---> acc'],
 ['insert', '-', 2, 'ADD ---> xtz']]

Performance

C:\Windows\system>ipython
Python 3.7.7 (tags/v3.7.7:d7c567b08f, Mar 10 2020, 10:41:24) [MSC v.1900 64 bit (AMD64)]
Type 'copyright', 'credits' or 'license' for more information
IPython 7.21.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: from cdiffer import *

In [2]: %timeit dist('coffee', 'cafe')
   ...: %timeit dist(list('coffee'), list('cafe'))
   ...: %timeit dist(tuple('coffee'), tuple('cafe'))
   ...: %timeit dist(iter('coffee'), iter('cafe'))
   ...: %timeit dist(range(4), range(5))
   ...: %timeit dist('coffee', 'xxxxxx')
   ...: %timeit dist('coffee', 'coffee')
125 ns ± 0.534 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
677 ns ± 2.3 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
638 ns ± 3.42 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
681 ns ± 2.16 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
843 ns ± 3.66 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
125 ns ± 0.417 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
50.5 ns ± 0.338 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)

In [3]: %timeit similar('coffee', 'cafe')
   ...: %timeit similar(list('coffee'), list('cafe'))
   ...: %timeit similar(tuple('coffee'), tuple('cafe'))
   ...: %timeit similar(iter('coffee'), iter('cafe'))
   ...: %timeit similar(range(4), range(5))
   ...: %timeit similar('coffee', 'xxxxxx')
   ...: %timeit similar('coffee', 'coffee')
123 ns ± 0.301 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
680 ns ± 2.64 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
647 ns ± 1.78 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
680 ns ± 7.57 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
848 ns ± 4.19 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
130 ns ± 0.595 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
54.8 ns ± 0.691 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)

In [4]: %timeit differ('coffee', 'cafe')
    ...: %timeit differ(list('coffee'), list('cafe'))
    ...: %timeit differ(tuple('coffee'), tuple('cafe'))
    ...: %timeit differ(iter('coffee'), iter('cafe'))
    ...: %timeit differ(range(4), range(5))
    ...: %timeit differ('coffee', 'xxxxxx')
    ...: %timeit differ('coffee', 'coffee')
735 ns ± 4.18 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
1.36 µs ± 5.17 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
1.31 µs ± 5.25 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
1.37 µs ± 5.04 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
1.33 µs ± 5.32 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
1.07 µs ± 6.75 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
638 ns ± 3.67 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

In [5]: a = dict(zip('012345', 'coffee'))
    ...: b = dict(zip('0123', 'cafe'))
    ...: %timeit dist(a, b)
    ...: %timeit similar(a, b)
    ...: %timeit differ(a, b)
524 ns ± 2.6 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
539 ns ± 2.23 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
1.07 µs ± 1.9 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

In [6]: %timeit compare("coffee", "cafe")
    ...: %timeit compare([list("abc"), list("abc")], [list("abc"), list("acc"), list("xtz")], rep_rate=50)
    ...: %timeit compare(["abc", "abc"], ["abc", "acc", "xtz"], rep_rate=40)
    ...: %timeit compare(["abc", "abc"], ["abc", "acc", "xtz"], rep_rate=50)
844 ns ± 3.88 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
3.32 µs ± 6.92 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)
1.16 µs ± 3.94 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
1.3 µs ± 31.5 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

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

cdiffer-0.7.2.tar.gz (30.8 kB view details)

Uploaded Source

Built Distributions

cdiffer-0.7.2-cp39-cp39-win_amd64.whl (554.3 kB view details)

Uploaded CPython 3.9 Windows x86-64

cdiffer-0.7.2-cp39-cp39-manylinux2010_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

cdiffer-0.7.2-cp39-cp39-macosx_10_16_x86_64.whl (442.2 kB view details)

Uploaded CPython 3.9 macOS 10.16+ x86-64

cdiffer-0.7.2-cp38-cp38-win_amd64.whl (553.1 kB view details)

Uploaded CPython 3.8 Windows x86-64

cdiffer-0.7.2-cp38-cp38-manylinux2010_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

cdiffer-0.7.2-cp38-cp38-macosx_10_16_x86_64.whl (441.8 kB view details)

Uploaded CPython 3.8 macOS 10.16+ x86-64

cdiffer-0.7.2-cp37-cp37m-win_amd64.whl (561.1 kB view details)

Uploaded CPython 3.7m Windows x86-64

cdiffer-0.7.2-cp37-cp37m-manylinux2010_x86_64.whl (1.3 MB view details)

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

cdiffer-0.7.2-cp37-cp37m-macosx_10_16_x86_64.whl (481.1 kB view details)

Uploaded CPython 3.7m macOS 10.16+ x86-64

cdiffer-0.7.2-cp36-cp36m-win_amd64.whl (561.0 kB view details)

Uploaded CPython 3.6m Windows x86-64

cdiffer-0.7.2-cp36-cp36m-manylinux2010_x86_64.whl (1.3 MB view details)

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

cdiffer-0.7.2-cp36-cp36m-macosx_10_16_x86_64.whl (481.1 kB view details)

Uploaded CPython 3.6m macOS 10.16+ x86-64

File details

Details for the file cdiffer-0.7.2.tar.gz.

File metadata

  • Download URL: cdiffer-0.7.2.tar.gz
  • Upload date:
  • Size: 30.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for cdiffer-0.7.2.tar.gz
Algorithm Hash digest
SHA256 d72409850a5cb03b9c47d04a5328bdcd521bd1b4277c08b37a8f7ae4a0d7a5e7
MD5 551096acd6f10b3d6e8ea0796af3c980
BLAKE2b-256 fd550606c03869f8c9ea2036cbfe1106de5ad5ab95ff76e56aebe52c9cd5ca63

See more details on using hashes here.

File details

Details for the file cdiffer-0.7.2-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: cdiffer-0.7.2-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 554.3 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for cdiffer-0.7.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 693b517e3d3e10cb65a2f1e41366ea88fe23cb012e60e8306f6ce1a559e54353
MD5 60aa755260fc5bbdb13392c2ffe9134d
BLAKE2b-256 5fe9c0ed061e755e79a4c67575b7c6bfd2d4c44a774130ed2113a037ea9695fd

See more details on using hashes here.

File details

Details for the file cdiffer-0.7.2-cp39-cp39-manylinux2010_x86_64.whl.

File metadata

  • Download URL: cdiffer-0.7.2-cp39-cp39-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.9, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for cdiffer-0.7.2-cp39-cp39-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 fde77caf855e42639ff54711a5a74e814d71b3f8d0261de8665db6ced53420b2
MD5 5b95a366918de660c7aec3e49c81e6c1
BLAKE2b-256 dfcc8f45eeca007ae4006b764c95e236040decb669eb4121fa7755d149f1df89

See more details on using hashes here.

File details

Details for the file cdiffer-0.7.2-cp39-cp39-macosx_10_16_x86_64.whl.

File metadata

  • Download URL: cdiffer-0.7.2-cp39-cp39-macosx_10_16_x86_64.whl
  • Upload date:
  • Size: 442.2 kB
  • Tags: CPython 3.9, macOS 10.16+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for cdiffer-0.7.2-cp39-cp39-macosx_10_16_x86_64.whl
Algorithm Hash digest
SHA256 0add3c3d74227d3cb4c05c38d03e0b454563c1e194e62bdf8c07e92359cba0fd
MD5 1ef979472f215a1de97f25ec7456acc5
BLAKE2b-256 10d50a6b8577e8d4c7d05478c621ced5301d6e71c8f4eca792c537fef5451f4e

See more details on using hashes here.

File details

Details for the file cdiffer-0.7.2-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: cdiffer-0.7.2-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 553.1 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for cdiffer-0.7.2-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 dfa5cedd5f370966ef1af0164726b4637ddc7e324bbb1ff6945941668bbe06e5
MD5 dacc4596186bf7ea2516e86839b91d34
BLAKE2b-256 27a384d1f64ee831453dedd9fc3de2cd149426f9e4c7a91e0ec24dc61b5c8236

See more details on using hashes here.

File details

Details for the file cdiffer-0.7.2-cp38-cp38-manylinux2010_x86_64.whl.

File metadata

  • Download URL: cdiffer-0.7.2-cp38-cp38-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.8, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for cdiffer-0.7.2-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 17701a0f5affb2dfdad1e3bb0cdbb352a66b1bf8548f2a8d78470387e4972848
MD5 257f187f32d1ad5cf6afbf6dea323a75
BLAKE2b-256 6eb10e6b2198ff4fb9fd3ccad8623d3014ee0ba6027ef09fe84369bea2be0037

See more details on using hashes here.

File details

Details for the file cdiffer-0.7.2-cp38-cp38-macosx_10_16_x86_64.whl.

File metadata

  • Download URL: cdiffer-0.7.2-cp38-cp38-macosx_10_16_x86_64.whl
  • Upload date:
  • Size: 441.8 kB
  • Tags: CPython 3.8, macOS 10.16+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for cdiffer-0.7.2-cp38-cp38-macosx_10_16_x86_64.whl
Algorithm Hash digest
SHA256 e59d03e0be3dadb9009d9c620bd5a1c53210d584ec6361d0606f83358a7ab203
MD5 9cad48593f4dd7b8a1d63ebe18350eb5
BLAKE2b-256 add0c8520a170649324a314b3bfef957c35bf9fd2eb16b62f86533bdb3cd6627

See more details on using hashes here.

File details

Details for the file cdiffer-0.7.2-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: cdiffer-0.7.2-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 561.1 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for cdiffer-0.7.2-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 fb6f68607376532f57dabc51a857cc1b6e4faea0651f2754982685e6da76d8de
MD5 caba755afc61efd9b71d97b1a1a856ad
BLAKE2b-256 1b99f071c55df6e06bb48fe7061332aafe9f87ac59625ffacbec014d4abaa8b6

See more details on using hashes here.

File details

Details for the file cdiffer-0.7.2-cp37-cp37m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: cdiffer-0.7.2-cp37-cp37m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: CPython 3.7m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for cdiffer-0.7.2-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 a7d1b56eabc160745c1f0ce08575f0b5e1e36eb726742f1b5ce9a807ee2becf4
MD5 311f1f869c3782004677992f8434c512
BLAKE2b-256 4858f66bcf02cc55fd891b0bcf511092c5f5a673eb0490e65c8e67ef208e1cba

See more details on using hashes here.

File details

Details for the file cdiffer-0.7.2-cp37-cp37m-macosx_10_16_x86_64.whl.

File metadata

  • Download URL: cdiffer-0.7.2-cp37-cp37m-macosx_10_16_x86_64.whl
  • Upload date:
  • Size: 481.1 kB
  • Tags: CPython 3.7m, macOS 10.16+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for cdiffer-0.7.2-cp37-cp37m-macosx_10_16_x86_64.whl
Algorithm Hash digest
SHA256 090dbd6a64482c8be0f6d0bcebbc75f175141328ef107bc32fc99422caf65fe0
MD5 30e782f3dbabd2fa6cc8faeada245e60
BLAKE2b-256 101f87a42d71f76565e3d235fbd73bc6d7233eb1f0e91fb269baaaa78d3ce6c8

See more details on using hashes here.

File details

Details for the file cdiffer-0.7.2-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: cdiffer-0.7.2-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 561.0 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for cdiffer-0.7.2-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 ea2b3064fe73e3b3026fa9bae505755655d88abe572b24b68d5bcdd76a238ef5
MD5 0943235b951bde523a2412e275c8f441
BLAKE2b-256 b1d1be62bbb2d3a825d87de7fa2c0e42c8328772713bb1456f7b83c3831f5917

See more details on using hashes here.

File details

Details for the file cdiffer-0.7.2-cp36-cp36m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: cdiffer-0.7.2-cp36-cp36m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: CPython 3.6m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for cdiffer-0.7.2-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 13a988e9021ab43741ec5b57d71dc27412801d3f9bc7a3f26464401e0a9f6af1
MD5 a754f8952ce807b31d905552265e11bf
BLAKE2b-256 89960a75ce08daae92cdaa55ff09a5163f7f76ca3739c7723bb1771cdfd685a9

See more details on using hashes here.

File details

Details for the file cdiffer-0.7.2-cp36-cp36m-macosx_10_16_x86_64.whl.

File metadata

  • Download URL: cdiffer-0.7.2-cp36-cp36m-macosx_10_16_x86_64.whl
  • Upload date:
  • Size: 481.1 kB
  • Tags: CPython 3.6m, macOS 10.16+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for cdiffer-0.7.2-cp36-cp36m-macosx_10_16_x86_64.whl
Algorithm Hash digest
SHA256 d5be4be67eeb8b2e445568905ebfd6abb6a4e6f571be57a05ffa179541222e39
MD5 c48793972969ddd00cf88b0183b07ee4
BLAKE2b-256 1e12f33c7cb7a5eb632d815dfd7e0447579b58dffe329703ddf528f2d12f09ca

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