2014-11-01 2 views
0

У меня есть программа python, которая запускает ресурсоемкую симуляцию. Я хотел бы, чтобы это захватило нажатие клавиши (желательно любое, но просто пространство тоже работало) и статус отчета, когда это произойдет.Keypress для обновления состояния в Python

Как мне это сделать?

+0

@Carpetsmoker Спасибо! Это сработало. Если вы опубликуете ответ, я соглашусь. –

ответ

0

Вы задаете слишком много деталей, поэтому трудно дать подробный ответ, но в целом я бы использовал модуль signal для печати статуса.

BSD имеет SIGINFO (связанный с ^T) именно для этой цели; Linux & Windows, к сожалению, не реализует этого, поэтому он не очень портативен.
В Linux, но вы можете использовать SIGUSR1, вы не можете отправить это с клавиатуры, но вы можете использовать kill.

Вы также можете использовать SIGINT (^C), чтобы распечатать статус. Это имеет побочный эффект, который больше не может выйти из программы с помощью^C.

Также см: Can I make use of an interrupt to print a status while still continue process?

Смежные вопросы