Почему я не могу прочитать из stdin после вызова python-sane get_devices () - PullRequest
0 голосов
/ 27 февраля 2019

Я пытаюсь создать скрипт, который перечисляет локально подключенные сканеры, используя sane.get_devices (True), а затем позволяет пользователю выбрать устройство на основе отображаемого списка.

Однако после запуска вменяемого.Метод get_devices (), вызов

raw_input("Select device")

просто висит там, и приглашение не отображается.Любой ввод с клавиатуры, оканчивающийся на «Enter», не имеет никакого эффекта, он просто сидит и ждет ввода.

Копая немного глубже, я обнаружил, что

sys.stdin.isatty() returns True 

перед get_devices () позвоните и верните False после него.Так что, как-то, я думаю, stdin перенаправляется куда-то еще.

Итак, суть, как я могу заставить raw_input () работать после sane.get_devices ()?

Я использую python 2.7.15 и python-sane 2.8.2

Любая помощь очень ценится.

...