команда ВЫБОР в DOS, пакетная замена / воспроизведение в python - PullRequest
2 голосов
/ 26 марта 2010

Я хочу воспроизвести поведение команды CHOICE в пакете DOS, но с python.

raw_input требует, чтобы пользователь напечатал что угодно, затем нажмите клавишу ВВОД / ВОЗВРАТ. Что я действительно хочу, так это чтобы пользователь нажал одну клавишу и скрипт продолжил с этого момента.

Ответы [ 2 ]

3 голосов
/ 26 марта 2010

Для Unix используются модули sys, tty, termios.

import sys, tty, termios
fd = sys.stdin.fileno()
old_settings = termios.tcgetattr(fd)
tty.setraw(sys.stdin.fileno())
ch = sys.stdin.read(1)

Для Windows используется модуль msvcrt.

import msvcrt
ch = msvcrt.getch()

Источник

2 голосов
/ 26 марта 2010

Небольшой служебный класс для чтения отдельных символов из стандартного ввода: http://code.activestate.com/recipes/134892-getch-like-unbuffered-character-reading-from-stdin/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...