Skip to main content

python implementation of bloom filter

Project description

bloom filter

tests
python implementation of bloom filter

What is bloom filter? https://en.wikipedia.org/wiki/Bloom_filter

installation

$ pip install easy-bloom-filter

usage

Simple example

from easy_bloom_filter import BloomFilter, Response

bf = BloomFilter(init_size=2001, func_count=3)

bf.add_element("first")
bf.add_element("second")
bf.add_element({"num": "3"})

print(bf.query("4")     == Response.NO)     # True (not added to filter)
print(bf.query("first") == Response.MAYBE)  # True (maybe added to filter check with the source of truth)

print(bf.false_positive_probability)  # 9.09884490736791e-08
print(bf.actual_size)                 # 2000  (round to multiple of 8 for storing the data on bits)

install dev requirements

$ pip install -r requirements-dev.txt

only tests

$ pytest .

tests with coverage

$ pytest --cov-report=html --cov=py_bloom_filter tests/

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

easy-bloom-filter-0.1.0.tar.gz (3.5 kB view details)

Uploaded Source

Built Distribution

easy_bloom_filter-0.1.0-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file easy-bloom-filter-0.1.0.tar.gz.

File metadata

  • Download URL: easy-bloom-filter-0.1.0.tar.gz
  • Upload date:
  • Size: 3.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for easy-bloom-filter-0.1.0.tar.gz
Algorithm Hash digest
SHA256 0e30d027fcc2a0a39a1f6469c1df9b8a708f2eff5d9c27924a28159de4f0f72a
MD5 217415da0c4b630eaa291321906fad3c
BLAKE2b-256 4361b059cc2f846acf2bc393663bb5451ae7cc63918e2ee9645dad06464697a4

See more details on using hashes here.

File details

Details for the file easy_bloom_filter-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: easy_bloom_filter-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for easy_bloom_filter-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 83bb28991439ecd30ea203b6bacd364dac913d36dcd56c41e9a37f1b47b4b15c
MD5 d0cfe42e93c84e19ce58a0bdab019d76
BLAKE2b-256 2c43378f80b831f4a48dccfa8900c0943872375db2d78c0f3b62e4d1b20eadcd

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