シェルでのユーザー操作に Python の raw_input 関数を利用する場合、一般的な不便さが生じます。ユーザーは入力後に Enter キーを押す必要があります。 *nix マシンでこの追加手順を必要とせずに入力をキャプチャする回避策はありますか?
この目的の機能を実現するには、Windows システムで msvcrt モジュールを使用できます。具体的には、msvcrt.getch 関数を使用すると、入力をコンソールにエコーすることなく、キー押下を読み取り、対応する文字を返すことができます。この機能を使用すると、Enter キーを押すのを待たずに入力を即座にキャプチャできます。
Unix ベースのシステムの場合、このタスクを実行するために使用できるさまざまな方法があります。 1 つのアプローチには、getch の機能をエミュレートする単純な関数の作成が含まれます。この関数は通常、termios モジュールを使用して端末設定を変更し、行バッファリングを無効にし、関数がキー入力を即座にキャプチャできるようにします。
要約すると、Enter キーを押さずにユーザー入力をキャプチャするソリューションを探す場合は、次のことを検討してください。 Windows では msvcrt.getch 関数を利用するか、Unix ベースのシステムでは termios モジュールに基づくカスタム関数を実装します。これらのアプローチにより、より効率的でユーザーフレンドリーな入力処理エクスペリエンスが提供されます。
以上がEnterを押さずにPythonでユーザー入力をキャプチャする方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。