Чтобы это работало так, как вы хотите (я предполагаю, что у вас есть другие части приложения, которые вы хотите продолжать работать, например, графический интерфейс), вам понадобится многопоточность.
Реализация TextIO действительно будет решающим фактором, но в приведенном выше конкретном примере кода цикл while зависит от этого ввода, поэтому в этой точке придется делать паузу независимо от многопоточности.