タイムアウト処理を伴う非同期キーボード入力
当面のタスクは、無期限の待機を防ぐためにタイムアウトを課しながらユーザー入力を求めることです。 Google はこのためにメール スレッドを提案していますが、満足のいく結果が得られない可能性があります。
この課題は、最大 1 つの引数を受け入れるシステム入力関数 ([raw_]input) から発生します。ただし、タイムアウトを実装するには、タイムアウト パラメータを渡す必要があります。これにより、TypeError が発生します。
Select Poll を使用した解決策
より信頼性の高い解決策には、select.select() システムの使用が含まれます。 call:
import sys, select print("You have ten seconds to answer!") i, o, e = select.select([sys.stdin], [], [], 10) if (i): print("You said", sys.stdin.readline().strip()) else: print("You said nothing!")
Breakdown
このアプローチにより、タイムアウト機能を使用してキーボード入力を処理する際の移植性と効率が向上します。
以上がPython でタイムアウトのある非同期キーボード入力を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。