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.2.tar.gz
(7.2 kB
view hashes)
Built Distribution
Close
Hashes for bloom_filter-1.3.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2bfa62153394d3a43127e6c57ed2820497f8d6c42cb061f2323e5ae4d9b50b8a |
|
MD5 | 43d5c85244e90ff3dc8bacd5f0b89e07 |
|
BLAKE2b-256 | 72b8806bf02deedb4dbc7eeef036c71c8e3fe6805ff06ad4524e96c74b704c42 |