Натиснете произволен клавиш, за да продължите (Python, кросплатформено решение)

Опитвам се да създам едно поведение на скрипта на Linux/Mac/Windows машини с Python 2.7.x.

С малко помощ от тази тема:

Мога да постигна желаните резултати: чрез натискане на произволен клавиш скриптът ще излезе.

Но може би има по-добър начин да направите това? Може ли някой да ми помогне?

Благодаря!

#!/usr/bin/env python2.7

import os
import sys

def wait_for_press():
    if sys.platform == 'win32':
        os.system("pause")
    elif sys.platform in ('linux2', 'darwin'):
        import termios
        import tty

        print "Press any key to continue..."

        stdin_file_desc = sys.stdin.fileno()
        old_stdin_tty_attr = termios.tcgetattr(stdin_file_desc)
        try:
            tty.setraw(stdin_file_desc)
            sys.stdin.read(1)
        finally:
            termios.tcsetattr(stdin_file_desc, termios.TCSADRAIN, old_stdin_tty_attr)

if __name__ == "__main__":
    wait_for_press()

person silent    schedule 17.09.2013    source източник


Отговори (1)


Гадост. Защо имате специфичен за ОС код? Какво се случва, ако някой използва „linux3“? Вероятно търсите библиотеката curses .

Обърнете се към отговора на nachik относно Python прочете един знак от потребителя

person IceArdor    schedule 20.10.2013