Существует ли способ программно прервать raw_input Python? А именно, я хотел бы представить подсказку пользователю, но также и послушать на дескрипторе сокета (использующий выбор, например) и прервать подсказку, произвести что-то и вновь отобразить подсказку, если данные входят на сокете.
Причина использования raw_input вместо того, чтобы просто делать выбор на sys.stdin состоит в том, что я хотел бы использовать readline модуль для обеспечения функциональности редактирования строки для подсказки.
Насколько я знаю ... «Вроде».
raw_input
блокируется, поэтому единственный способ, который я могу придумать, - это создать подпроцесс / поток для получения ввода, а затем просто связаться с потоком / подпроцессом. Это довольно грязный хак (по крайней мере, мне так кажется), но он должен работать на разных платформах. Другой альтернативой, конечно же, является использование модуля curses в Linux или получение этого для Windows.