Ответ 1
Проблема заключается в том, что текстовый вывод не является отладчиком.
Я просто попробовал это на своей Q6600 (разогнанной 3GHz) системе, и мои цифры еще хуже. Но его легко увидеть, что они идут вниз, более выходной текст добавлен.
Я попытался запустить его с помощью
1000 итераций = > 7,8 с 2000 итераций = > 28,5 сек 3000 итераций = > 70 секунд
В прошлом я использовал некоторые низкоуровневые TK-материалы, и я знаю, что TkText Widget сохраняет текст в структуре BTree. Добавление текста персонажа - это один из худших способов сделать, но это похоже на то, что делает IDLE. Обычным способом является улавливание большего количества данных и добавление большего фрагмента текста.
Удивительно, если вы печатаете "x\n", вывод выполняется намного быстрее. 3000 итераций за 7 секунд и 10000 за 19 сек.
Таким образом, проблема, безусловно, связана с добавлением отдельных символов в существующие строки. Программист IDLE не знал, как работает TkText.
Итак, советую добавить в текст новые символы перевода или вывести более крупные фрагменты, а не только один символ "x".