Skip to main content

Python wrapper for SpookyHash V2

Project description

SpookyHash is a public domain noncryptographic hash function producing well-distributed 128-bit hash values for byte arrays of any length.1

This python library is a Cython wrapper for the original C++ implementation. There are both (fast) one-shot hash functions and (slower) hashlib-like hash objects.

Usage

>>> import spooky_hash
>>> print spooky_hash.hash32('hello world')
2617184861
>>> print long(spooky_hash.Hash32('hello ').update('world'))
2617184861

>>> print spooky_hash.hash64('hello world')
14865987102431973981
>>> print long(spooky_hash.Hash64('hello ').update('world'))
14865987102431973981
>>> print spooky_hash.Hash64('hello ').update('world').hexdigest()
5d12ff9b81984ece

>>> print spooky_hash.hash128_long('hello world')
123716849286372619103118623513034416523
>>> print long(spooky_hash.Hash128('hello ').update('world'))
123716849286372619103118623513034416523
>>> print spooky_hash.Hash128('hello ').update('world').hexdigest()
5d12ff9b81984ece25103f0dee88e18b
>>> import binascii
>>> print binascii.hexlify(spooky_hash.hash128('hello world'))
5d12ff9b81984ece25103f0dee88e18b

>>> print spooky_hash.hash32('hello world', seed=4)
4130951021
>>> print spooky_hash.Hash64('hello ', seed=8).update('world').hexdigest()
e54162c401e00c21
>>> print spooky_hash.Hash128('hello ', seed1=15, seed2=16).update('world').hexdigest()
1d46e376a416468b6c5c3a8f3798042b

Project details


Release history Release notifications

This version
History Node

1.0.1

History Node

1.0

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
spooky_hash-1.0.1.macosx-10.9-x86_64.tar.gz (21.2 kB) Copy SHA256 hash SHA256 Dumb Binary 2.7 Feb 24, 2014
spooky_hash-1.0.1.tar.gz (39.2 kB) Copy SHA256 hash SHA256 Source None Feb 24, 2014

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page