input = (open('enwik7.txt', 'r', encoding='ansi').read()) tree = ['', [], []] for count2 in range(50): window = input[count2: count2 + 15] node = 0 for i in window: char_index = tree[node].find(i) + 1 if char_index == 0: tree[node] = tree[node] + i tree[node + 1].append(1) tree[node + 2].append(len(tree)) node = len(tree) tree.extend(('', [], [])) else: tree[node + 1][char_index - 1] += 1 node = tree[node + 2][char_index - 1] print(tree)