1

我正在尝试使用 Python 2.7.x 在 Linux/Mac/Windows 机器上创建脚本的一种行为。

在这个线程的一些帮助下:

我可以达到预期的效果:按任意键脚本都会退出。

但也许有更好的方法来做到这一点?有人可以帮帮我吗?

谢谢!

#!/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()
4

1 回答 1

0

呸。为什么你有特定于操作系统的代码?如果有人使用'linux3'会发生什么?您可能正在寻找curses库。

请参阅 nachik 在Python 上的回答 read a single character from the user

于 2013-10-20T10:27:56.557 回答