______ ______ ___________ ______
___ /_ ___ /______ ______ _______ ___ ___ /___(_)___ /_
__ __ \__ / _ __ \_ __ \__ __ `__ \__ / __ / __ __ \
_ /_/ /_ / / /_/ // /_/ /_ / / / / /_ / _ / _ /_/ /
/_.___/ /_/ \____/ \____/ /_/ /_/ /_/ /_/ /_/ /_.___/
bloomlib: superfast Bloom filters for Python, optimized in Rust
| Testing | |
| Package | |
| Meta | |
| Social |
bloomlib is a Python package that provides superfast Bloom filters, designed to optimize your applications in an easy and intuitive way. It aims to be the go-to package to build and use Bloom Filters that make your applications superfast, memory-efficient and user-friendly.
pip install bloomlib
Table of Contents
- Main Features
- Usage Example
- Installation
- Dependencies
- License
- Documentation
- Development
- Contributing to bloomlib
Main Features
- 🦀 Built in Rust
- ⚡ Highly optimized for speed and memory-efficiency
- 👨🎨 User-friendly
Usage Example
from bloomlib import BloomFilter
# 1. Create the filter
bf = BloomFilter(expected_number_of_items=1_000, desired_false_positive_rate=0.05)
# 2. Add items
for i in range(100):
bf.add(item=i)
# 3. Check if an item is contained; False means definitely not, True means "maybe"
if (bf.contains(item=42)):
print("This item may be in filter")
else:
print("This item is definitely not in the filter")
Installation
pip install bloomlib
The source code is currently hosted on GitHub at: https://github.com/mike-huls/bloomlib
Binary installers for the latest released version are available at the Python Package Index (PyPI).
Dependencies
Bloomlib has no Python dependencies
License
Documentation
🔨 Under construction
Development
Find the changelog and list of upcoming features here.
Contributions are always welcome; feel free to submit bug reports, bug fixes, feature requests, documentation improvements or enhancements!
Metadata
Release files for bloomlib 0.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| bloomlib-0.0.3.tar.gz | 15.9 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| bloomlib-0.0.3-cp39-cp39-manylinux_2_34_x86_64.whl | CPython 3.9 | CPython 3.9 | Linux glibc 2.34+ x86-64 | Details |
Total release size: 16.2 MB
Release files / bloomlib-0.0.3.tar.gz
| Download URL | bloomlib-0.0.3.tar.gz |
|---|---|
| Size | 15.9 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e6239dc2de24a0c249918bf9ecdd1022c71db3507ac449bb590c3ba7a8dfc48c
|
|
BLAKE2b-256 checksum How to use checksums |
ba1eb0887395b191b441ce30ff133feb42a1a3ede4153913f6014eb06f317b7c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.7.4
|
Release files / bloomlib-0.0.3-cp39-cp39-manylinux_2_34_x86_64.whl
| Download URL | bloomlib-0.0.3-cp39-cp39-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 260.1 kB |
| Tags | CPython 3.9 Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
a6443429eb2ca695b71734d61a8fe81362477d1d03b139b115a2c3cd8e50bb86
|
|
BLAKE2b-256 checksum How to use checksums |
33972010cda687415abcd37c91b8c095fa4a09c1b39643975b5fca0d064fbd57
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.7.4
|