暂无描述

Harshad Sharma aedbc46331 Make test work standalone as well as with py.test. 8 年之前
src 0e5ec1a760 Refactor project structure, move sources under src/, tests under tests/ 8 年之前
tests aedbc46331 Make test work standalone as well as with py.test. 8 年之前
.gitignore aedbc46331 Make test work standalone as well as with py.test. 8 年之前
Makefile 49885f92b6 performance-numbers.db no longer .PRECIOUS 10 年之前
README e886853fde Changed an errant comma to a period in the README 11 年之前
setup.py 6a3d9fa518 Cleanup setup. 8 年之前

README


This bloom filter implementation:
1) Has a constructor that accepts a maximum comfortable number of members and maximum appropriate error (false positive) rate, and
derives the fiddly bits from that; most bloom filter modules ask the enduser to specify the fiddly bits themselves.
2) Has a nice test suite, including checks for error rate.
3) Is in pure Python that'll run on CPython 2.x, CPython 3.x, PyPy or Jython.
4) Has a pair of simple, fast hash functions that give a good error rate - they're better than many of the alternatives.
They're not Murmur or Jenkins, but the tests strongly suggest that they're working well.
5) Passes pylint and pep8.
6) Supports adding elements, testing for membership, and'ing sets and or'ing sets.

The code is derived from http://code.activestate.com/recipes/577686-bloom-filter/ and inherits that code's license (MIT).

For more about Bloom Filters:
http://en.wikipedia.org/wiki/Bloom_filter
http://spyced.blogspot.com/2009/01/all-you-ever-wanted-to-know-about.html