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

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

Однако после запуска метода sane.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

Любая помощь с благодарностью.

0 ответов

Другие вопросы по тегам