KeyError в генераторе текста

Я пытаюсь написать код, который будет собирать статистику о последовательности символов в тексте и генерировать на ее основе новый текст. Это работает при сборе статистики с одним символом, но как только я пытаюсь увеличить количество символов, получаю KeyError:

import zipfile
from random import randint
from pprint import pprint

origin = 'voyna-i-mir.txt'

statistic = {}

chain = '   '
with open(origin, 'r', encoding='cp1251') as file:
    for sting in file:
        #print(sting)
        for symbol in sting:
            if chain in statistic:
                 if symbol in statistic[chain]:
                    statistic[chain][symbol] += 1
                else:
                    statistic[chain][symbol] = 1
            else:
                statistic[chain] = {symbol: 1}
            chain = chain[1:] + symbol


dictionary = {}
stat_generator = {}
for chain, symbol_stat in statistic.items():
    dictionary[chain] = 0
    stat_generator[chain] = []
    for symbol, count in symbol_stat.items():
        dictionary[chain] += count
        stat_generator[chain].append([count, symbol])
    stat_generator[chain].sort(reverse=True)

gen = 1000
was_print = 0

chain = '   '
while was_print < gen:
    symbol_stat = stat_generator[chain]
    total = dictionary[chain]
    random = randint(1, total)
    position = 0
    for count, symbol in symbol_stat:
        position += count
        if random <= position:
            break
        print(symbol, end='')
        was_print += 1
        chain = chain[1:] + symbol

Текст ошибки, которую я получаю:

Traceback (most recent call last):

  File "C:\Users\O.K\Desktop\\test.py", line 46, in <module>
    symbol_stat = stat_generator[chain]
          ~~~~~~~~~~~~~~^^^^^^^
KeyError: ' -–'

Ответы (0 шт):