Skip to content

sumerc/pyctrie

Repository files navigation

Pyctrie

Fast, pure C Trie dictionary

Features:

  • Very fast. Same performance characteristics with Python's dict.
  • Supports fast suffix, prefix, correction (spell) operations.
  • Supports Python 2.6 <= x <= 3.4

Example:

It is just like a dict:

import triez
tr = triez.Trie()
tr[u"foo"] = 1
del trie[u"foo"]

But with extra features:

tr[u"foo"] = 1
tr.corrections(u"fo")
{'foo'}
tr[u"foobar"] = 1
tr.prefixes(u"foobar")
{'foo', 'foobar'}
tr.suffixes(u"foo")
{'foo', 'foobar'}

Generator support:

tr[u"foo"] = 1
tr[u"foobar"] = 1
for x in tr.iter_suffixes(u"foo"):
    print(x)
foo
foobar

License

MIT