1. pybloom-live
- 特点:
- 一个高效的布隆过滤器实现。
- 支持动态扩展,即可以在运行时增加更多的元素。
- 实现简单,易于使用。
pip install pybloom-live
使用示例
from pybloom_live import BloomFilter # 创建布隆过滤器,预计最多添加1000个元素,误判率为0.1% bloom = BloomFilter(capacity=1000, error_rate=0.01)
# 添加元素 bloom.add("data_md5")
# 判断是否存在 if "data_md5" in bloom: print("存在")
2. Bloom Filter
(bloomfilter.py)
- 特点:
- 这个库相对较小,没有太多依赖。
- 支持多个哈希函数的设置,可以调整精度和性能。
- 可自定义大小和误差率。
pip install bloom-filter
使用示例:
from bloom_filter import BloomFilter bloom = BloomFilter(max_elements=1000, error_rate=0.1) bloom.add("sea") if "sea" in bloom: print("sea 存在")