python 3中bloom filter和scalable bloomfilter的简单实现。
simplebloomfilter的Python项目详细描述
#简单的布卢姆过滤器
[![pypi](https://img.shields.io/pypi/v/simplebloomfilter.svg)](
[![pypi-python版本](https://img.shields.io/pypi/pyversions/simple bloom filter.svg)](
python 3的bloomfilter和scalable bloomfilter的简单实现。
```
$[sudo]pip安装simplebloomfilter
```
/usr/bin/python
-*-编码:utf-8-*-
来自bloomfilter进口bloomfilter,scalablebloomfilter,sizegrowsrate
"野猪"、"蝴蝶"、"蚂蚁"、"水蟒"、"熊"、"鸡"、"海豚"、"驴"、"乌鸦"、"鳄鱼"、"猪"等"狐狸"
"狐狸"
"鲸鱼"
"鲸鱼"
"鲨鱼"
"鲨鱼"
"鱼"
"火鸡"
"火鸡"
"鸭"
"鸽子"
"鸽子"
"鹿"
"大象"
"大象"
"青蛙"
"青蛙"
"猎鹰"
"山羊"
"大猩猩"
"大猩猩"
"鹰"
是的int("====bloom filter示例====")
bloomfilter=bloomfilter(大小=1000,fp_prob=1e-6)
"+容量:{}item(s)"。格式(bloom filter.size)、
"+插入项数:{}"。格式(len(bloomfilter)),
"+筛选器大小:{}位"。格式(bloomfilter.filter.size)、
"+误报概率:{}"。格式(bloomfilter.fp prob),
"+numb"哈希函数的er:{}。格式(bloom_filter.num_hashes),
sep="\n",
end="\n\n",
imals:
print(
f'{animal}为假阳性(请将fp-prob调整为较小的值)。'
)
否则:
print(f'{animal}可能在筛选器中。)
否则:
print(f'{animal}"绝对不在预期的筛选器中。")
/>
def scalable\u bloom\u filter\u example():
print("====bloom filter example===="
scalable\u bloom\u filter=scalable bloomfilter(
初始大小=100,
初始大小=1e-7,
大小增长率=size growth rate.large,
fp prob\u rate=0.9,
)
将项插入bloom filter
对于动物中的动物:
可缩放的bloom filter.add(动物)
插入项的个数:{}。格式(len(scalable\u bloom\u filter)),
"+bloom filter数目:{}"。格式(scalable\u bloom\u filter.num\filter s),
"+筛选器的总大小:{}位"。格式(scalable\u bloom\u filter.filter\size),
"+误报概率:{}"。格式(scalable_u bloom_u filter.fp_u prob),
sep="\n",
end="\n\n",
)
:
如果动物在可缩放的布鲁姆过滤器中:
如果动物在其他动物中:
打印(
f"{animal}"是假阳性(请将fp-prob调整为较小的值)。'
)
否则:
打印(f"{animal}"可能在过滤器中)。
否则:
打印(f"{animal}"绝对没有按预期包含在筛选器中。)
保存到文件
以open("scalable布鲁姆过滤器.bin","wb")作为fp:
scalable布鲁姆过滤器.save(fp)
从文件加载
以open("scalable布鲁姆过滤器.bin","rb")作为fp:
scalable布鲁姆过滤器=s加载(fp)
>if \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
+假阳性概率:1e-06
+numb散列函数er:20
"dog"可能在过滤器中。
"cat"可能在过滤器中。
"giraffe"可能在过滤器中。
"fly"可能在过滤器中。
"蚊子"可能在过滤器中。
"horse"可能在过滤器中。
"eagle"可能在过滤器中。
"biso"可能在过滤器中。n"可能在过滤器中。
"野猪"可能在过滤器中。
"蝴蝶"可能在过滤器中。
"蚂蚁"可能在过滤器中。
"水蟒"可能在过滤器中。
"熊"可能在过滤器中。
"鸡"可能在过滤器中。
"海豚"可能在过滤器中。
"驴"可能在过滤器中。
"乌鸦"可能在过滤器中。
"鳄鱼"可能在过滤器中。
"獾"肯定没有按预期在过滤器中。
"牛"肯定没有按预期在过滤器中。
"猪"肯定没有按预期在过滤器中。
"羊"肯定没有按预期在过滤器中。
"蜜蜂"肯定没有在过滤器中。如预期。
"狼"绝对没有按预期进入过滤器。
"狐狸"绝对没有按预期进入过滤器。
"鲸"绝对没有按预期进入过滤器。
"鲨鱼"绝对没有按预期进入过滤器。
"鱼"绝对没有按预期进入过滤器。
"火鸡"绝对没有按预期进入过滤器。d.
"duck"绝对不在预期的过滤器中。
"dove"绝对不在预期的过滤器中。
"deer"绝对不在预期的过滤器中。
"elephant"绝对不在预期的过滤器中。
"frog"绝对不在预期的过滤器中。
"falcon"绝对不在预期的过滤器中。
"山羊"绝对没有像预期的那样出现在过滤器中。
"大猩猩"绝对没有像预期的那样出现在过滤器中。
"鹰"绝对没有像预期的那样出现在过滤器中。
==bloom过滤器示例====br/>+容量:100个项目
+插入项目数:19
+bloom过滤器数:1
+过滤器总尺寸:3355位
+假阳性概率:9.9999999 4736442E-08
"cat"可能在过滤器中。
"giraffe"可能在过滤器中。
"fly"可能在过滤器中。
"蚊子"可能在过滤器中。
"horse"可能在过滤器中。
"eagle"可能在过滤器中。
"鸟"可能在过滤器里。
"野牛"可能在过滤器里。
"野猪"可能在过滤器里。
"蝴蝶"可能在过滤器里。
"蚂蚁"可能在过滤器里。
"蟒蛇"可能在过滤器里。
"熊"可能在过滤器里。
"鸡"可能在过滤器里。
"海豚"可能在过滤器里。呃。
"驴"可能在过滤器里。
"乌鸦"可能在过滤器里。
"鳄鱼"可能在过滤器里。
"獾"肯定不在过滤器里。e按预期过滤。
"cow"绝对没有按预期进入过滤器。
"pig"绝对没有按预期进入过滤器。
"sheep"绝对没有按预期进入过滤器。
"bee"绝对没有按预期进入过滤器。
"wolf"绝对没有按预期进入过滤器。
"fox"绝对不在预期的过滤器中。
"whale"绝对不在预期的过滤器中。
"shark"绝对不在预期的过滤器中。
"fish"绝对不在预期的过滤器中。
"turkey"绝对不在预期的过滤器中。
"duck"是d显然没有按预期进入过滤器。
"鸽子"绝对没有按预期进入过滤器。
"鹿"绝对没有按预期进入过滤器。
"大象"绝对没有按预期进入过滤器。
"青蛙"绝对没有按预期进入过滤器。
"猎鹰"绝对没有在预期的过滤器中。
"山羊"绝对不在预期的过滤器中。
"大猩猩"绝对不在预期的过滤器中。
"鹰"绝对不在预期的过滤器中。
````
[![pypi](https://img.shields.io/pypi/v/simplebloomfilter.svg)](
[![pypi-python版本](https://img.shields.io/pypi/pyversions/simple bloom filter.svg)](
python 3的bloomfilter和scalable bloomfilter的简单实现。
```
$[sudo]pip安装simplebloomfilter
```
/usr/bin/python
-*-编码:utf-8-*-
来自bloomfilter进口bloomfilter,scalablebloomfilter,sizegrowsrate
"野猪"、"蝴蝶"、"蚂蚁"、"水蟒"、"熊"、"鸡"、"海豚"、"驴"、"乌鸦"、"鳄鱼"、"猪"等"狐狸"
"狐狸"
"鲸鱼"
"鲸鱼"
"鲨鱼"
"鲨鱼"
"鱼"
"火鸡"
"火鸡"
"鸭"
"鸽子"
"鸽子"
"鹿"
"大象"
"大象"
"青蛙"
"青蛙"
"猎鹰"
"山羊"
"大猩猩"
"大猩猩"
"鹰"
是的int("====bloom filter示例====")
bloomfilter=bloomfilter(大小=1000,fp_prob=1e-6)
"+容量:{}item(s)"。格式(bloom filter.size)、
"+插入项数:{}"。格式(len(bloomfilter)),
"+筛选器大小:{}位"。格式(bloomfilter.filter.size)、
"+误报概率:{}"。格式(bloomfilter.fp prob),
"+numb"哈希函数的er:{}。格式(bloom_filter.num_hashes),
sep="\n",
end="\n\n",
imals:
print(
f'{animal}为假阳性(请将fp-prob调整为较小的值)。'
)
否则:
print(f'{animal}可能在筛选器中。)
否则:
print(f'{animal}"绝对不在预期的筛选器中。")
/>
def scalable\u bloom\u filter\u example():
print("====bloom filter example===="
scalable\u bloom\u filter=scalable bloomfilter(
初始大小=100,
初始大小=1e-7,
大小增长率=size growth rate.large,
fp prob\u rate=0.9,
)
将项插入bloom filter
对于动物中的动物:
可缩放的bloom filter.add(动物)
插入项的个数:{}。格式(len(scalable\u bloom\u filter)),
"+bloom filter数目:{}"。格式(scalable\u bloom\u filter.num\filter s),
"+筛选器的总大小:{}位"。格式(scalable\u bloom\u filter.filter\size),
"+误报概率:{}"。格式(scalable_u bloom_u filter.fp_u prob),
sep="\n",
end="\n\n",
)
:
如果动物在可缩放的布鲁姆过滤器中:
如果动物在其他动物中:
打印(
f"{animal}"是假阳性(请将fp-prob调整为较小的值)。'
)
否则:
打印(f"{animal}"可能在过滤器中)。
否则:
打印(f"{animal}"绝对没有按预期包含在筛选器中。)
保存到文件
以open("scalable布鲁姆过滤器.bin","wb")作为fp:
scalable布鲁姆过滤器.save(fp)
从文件加载
以open("scalable布鲁姆过滤器.bin","rb")作为fp:
scalable布鲁姆过滤器=s加载(fp)
>if \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
+假阳性概率:1e-06
+numb散列函数er:20
"dog"可能在过滤器中。
"cat"可能在过滤器中。
"giraffe"可能在过滤器中。
"fly"可能在过滤器中。
"蚊子"可能在过滤器中。
"horse"可能在过滤器中。
"eagle"可能在过滤器中。
"biso"可能在过滤器中。n"可能在过滤器中。
"野猪"可能在过滤器中。
"蝴蝶"可能在过滤器中。
"蚂蚁"可能在过滤器中。
"水蟒"可能在过滤器中。
"熊"可能在过滤器中。
"鸡"可能在过滤器中。
"海豚"可能在过滤器中。
"驴"可能在过滤器中。
"乌鸦"可能在过滤器中。
"鳄鱼"可能在过滤器中。
"獾"肯定没有按预期在过滤器中。
"牛"肯定没有按预期在过滤器中。
"猪"肯定没有按预期在过滤器中。
"羊"肯定没有按预期在过滤器中。
"蜜蜂"肯定没有在过滤器中。如预期。
"狼"绝对没有按预期进入过滤器。
"狐狸"绝对没有按预期进入过滤器。
"鲸"绝对没有按预期进入过滤器。
"鲨鱼"绝对没有按预期进入过滤器。
"鱼"绝对没有按预期进入过滤器。
"火鸡"绝对没有按预期进入过滤器。d.
"duck"绝对不在预期的过滤器中。
"dove"绝对不在预期的过滤器中。
"deer"绝对不在预期的过滤器中。
"elephant"绝对不在预期的过滤器中。
"frog"绝对不在预期的过滤器中。
"falcon"绝对不在预期的过滤器中。
"山羊"绝对没有像预期的那样出现在过滤器中。
"大猩猩"绝对没有像预期的那样出现在过滤器中。
"鹰"绝对没有像预期的那样出现在过滤器中。
==bloom过滤器示例====br/>+容量:100个项目
+插入项目数:19
+bloom过滤器数:1
+过滤器总尺寸:3355位
+假阳性概率:9.9999999 4736442E-08
"giraffe"可能在过滤器中。
"fly"可能在过滤器中。
"蚊子"可能在过滤器中。
"horse"可能在过滤器中。
"eagle"可能在过滤器中。
"鸟"可能在过滤器里。
"野牛"可能在过滤器里。
"野猪"可能在过滤器里。
"蝴蝶"可能在过滤器里。
"蚂蚁"可能在过滤器里。
"蟒蛇"可能在过滤器里。
"熊"可能在过滤器里。
"鸡"可能在过滤器里。
"海豚"可能在过滤器里。呃。
"驴"可能在过滤器里。
"乌鸦"可能在过滤器里。
"鳄鱼"可能在过滤器里。
"獾"肯定不在过滤器里。e按预期过滤。
"cow"绝对没有按预期进入过滤器。
"pig"绝对没有按预期进入过滤器。
"sheep"绝对没有按预期进入过滤器。
"bee"绝对没有按预期进入过滤器。
"wolf"绝对没有按预期进入过滤器。
"fox"绝对不在预期的过滤器中。
"whale"绝对不在预期的过滤器中。
"shark"绝对不在预期的过滤器中。
"fish"绝对不在预期的过滤器中。
"turkey"绝对不在预期的过滤器中。
"duck"是d显然没有按预期进入过滤器。
"鸽子"绝对没有按预期进入过滤器。
"鹿"绝对没有按预期进入过滤器。
"大象"绝对没有按预期进入过滤器。
"青蛙"绝对没有按预期进入过滤器。
"猎鹰"绝对没有在预期的过滤器中。
"山羊"绝对不在预期的过滤器中。
"大猩猩"绝对不在预期的过滤器中。
"鹰"绝对不在预期的过滤器中。
````