Pure Python Bloom Filter module
Project description
A pure python bloom filter (low storage requirement, probabilistic set datastructure) is provided. It is known to work on CPython 2.x, CPython 3.x, Pypy and Jython.
Includes mmap, in-memory and disk-seek backends.
The user specifies the desired maximum number of elements and the desired maximum false positive probability, and the module calculates the rest.
Usage:
from bloom_filter import BloomFilter # instantiate BloomFilter with custom settings, # max_elements is how many elements you expect the filter to hold. # error_rate defines accuracy; You can use defaults with # `BloomFilter()` without any arguments. Following example # is same as defaults: bloom = BloomFilter(max_elements=10000, error_rate=0.1) # Test whether the bloom-filter has seen a key: assert "test-key" in bloom is False # Mark the key as seen bloom.add("test-key") # Now check again assert "test-key" in bloom is True
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
bloom_filter-1.3.1.tar.gz
(7.1 kB
view details)
Built Distribution
File details
Details for the file bloom_filter-1.3.1.tar.gz
.
File metadata
- Download URL: bloom_filter-1.3.1.tar.gz
- Upload date:
- Size: 7.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.7.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 309548f9115c148c30c73b9ecc165db70f3119b6efe0481b82910c4385b90609 |
|
MD5 | ed874e07c4a28fc7ed0176f308305ad7 |
|
BLAKE2b-256 | 773fd488afd60da7d0e37153234cc4c62f2fa2589377b4427f61e5cc850c60ca |
File details
Details for the file bloom_filter-1.3.1-py3-none-any.whl
.
File metadata
- Download URL: bloom_filter-1.3.1-py3-none-any.whl
- Upload date:
- Size: 8.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.7.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 16396fd25ffd6259d89e12b409e6656701ec8909a576303a50d2cdaf12f4ef88 |
|
MD5 | 94b11ea1a65c12f79ffd3215fff51f4c |
|
BLAKE2b-256 | ec9c1fa0c02fc4362bad7a521ec28ef23aa62cc7333e141d20e0fffa4723ed5c |