statementtrie.py
#word trie for look up and spell check
class wordtrie (object):
def __init__(self):
self.trie = {}
def __repr__(self):
return str(self.trie)
def __str__(self):
return str(self.trie)
def __getitem__(self, i):
letters = list(i)
current = self.trie
while len(letters) > 0:
char = letters.pop(0)
if char in current.keys():
current = current[char]
else:
raise IndexError('Word not found')
return current
def statement(self, phrase):
words = list(phrase)
current = self.trie
while len(words) > 0:
word = words.pop(0)
if word in current.keys():
current = current[word]
else:
current[word] = {}
current = current[word]
def addwordlist(self, words):
for elem in words:
self.statement(elem)
def isword(self, word):
words = list(word)
current = self.trie
while len(words) > 0:
letter = words.pop(0)
if letter in current.keys():
current = current[letter]
else:
return False
return True