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 hashes)
Built Distribution
Close
Hashes for bloom_filter-1.3.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 16396fd25ffd6259d89e12b409e6656701ec8909a576303a50d2cdaf12f4ef88 |
|
MD5 | 94b11ea1a65c12f79ffd3215fff51f4c |
|
BLAKE2b-256 | ec9c1fa0c02fc4362bad7a521ec28ef23aa62cc7333e141d20e0fffa4723ed5c |