Pythonはタイムアウトでユーザー入力を取得します
このチュートリアルでは、Python の inputimeout
ライブラリを使用して、タイムアウト期間でユーザーから入力を取得する方法について説明します。
Pythonはタイムアウトでユーザー入力を取得する
5 秒などの特定の期間内にユーザーから入力を受け取りたい場合は、Python の inputimeout
ライブラリを使用できます。 pip
を使用して、以下のコード行を使用してこのライブラリをインストールできます。
pip install inputimeout
このコマンドを PowerShell またはコマンド プロンプトで実行して、inputimeout
ライブラリをインストールできます。 上記のコマンドを実行する前に、pip
がインストールされ、PATH
に追加されていることを確認してください。
pip
がパスに追加されていない場合は、pip.exe
ファイルへのフル パスと、PowerShell
またはコマンド プロンプトで使用する名前を指定する必要があります。 使用例を以下に示します。
C:\Users\ammar\AppData\Local\Programs\Python\Python39\Scripts\pip.exe install inputimeout
inputimeout
がエラーなしでインストールされている場合は、inputimeout
および TimeoutOccured
モジュールをインポートして、コードで使用できます。 inputimeout()
関数はユーザーからの入力を受け取り、その中に 2つの引数を渡すことができます。
最初の引数 prompt
は、入力時にユーザーに表示するメッセージです。 この引数はオプションです。 2 番目の引数 timeout
は時間を秒単位で設定するために使用され、関数は指定された時間まで待機します。 その後、例外が発生し、エラーを回避するために try-except
ステートメントで使用できる例外名 TimeoutOccured
を使用できます。
from inputimeout import inputimeout, TimeoutOccurred
try:
user_input = inputimeout(prompt="Enter input: \n", timeout=5)
except TimeoutOccurred:
user_input = "you have not entered any input"
print(user_input)
出力:
Enter input:
you have not entered any input
上記のコードでは、Python の try-except
ステートメントを使用して、ユーザーが指定された時間内に何も入力しなかった場合の例外を回避しました。 例外の名前を使用して、入力をデフォルト値などの別のものに設定しました。
ユーザーが入力を入力すると、それが出力されます。指定されたタイムアウト中にユーザーが何も入力しないと、デフォルトの入力が出力されます。 入力は user_input
変数に保存されます。
inputimeout
ライブラリの詳細については、この リンク を確認してください。