ググってみたところ、select は基本的にノンブロッキング監視を実装するために使用されることがわかりました。しかし、問題は、select を使用して監視した後、getchar() のように 1 文字の入力をすぐに受け取ることができないことです。馬車が戻るのを待ちます。
苦労の末、Google... [オーケー、それでも Google。 Google なしでは何もできません。 ]
最後に、多くの英語情報を入力し、次の利用可能なコードをつなぎ合わせて、単一文字のノンブロッキング入力を実現しました。
以下のコードを表示します。 # -*- コーディング: utf-8 -*-
""" Python 非ブロック入力
if select.select( [sys.stdin], [], [], 0) == ([sys.stdin], [], []):
c = sys.stdin.read(1)
if c == 'x1b': ブレーク
sys.stdout.write(c)
sys.stdout.flush()
print raw_input('123:')
termios と tty という 2 つのモジュールが使用され、行入力から単一文字まで tty の入力モードを制御するために使用されます。
終了