Можно ли обрабатывать KeyboardInterrupt в оболочке, если скрипт не запущен?
Предыстория моего вопроса следующая: я использую python для отправки команд на контроллер двигателя через соединение через сокет. Функция отправляет целевое положение двигателя в контроллер и немедленно возвращает значение, т. е. до того, как двигатель фактически достигнет своего целевого положения. Теперь может случиться так, что пользователь вводит неправильное положение и хочет прервать движение двигателя как можно быстрее. Это можно сделать, введя команду stop(), которая отправляет команду остановки контроллеру. Но было бы более интуитивно понятно и быстрее, если бы двигатель можно было остановить, нажав Ctrl+C. Есть ли способ позволить python выполнить функцию, нажав Ctrl + C, пока скрипт не запущен?
Я знаю, как обрабатывать исключение KeyboardInterrupt или signal.SIGINT в работающем скрипте, но не смог найти подсказок о том, как решить мою задачу.
Буду очень благодарен за любую помощь!
stop()
. - person James   schedule 30.11.2018