私はwhileループでいくつかの単語を入力しなければならないPythonプログラム(OS X/Linux上)を書いています。特定の文字が入力されたときにPythonの入力を停止する
i = 0
array = []
while (i < 10):
array.append(raw_input("Prompt: "))
i = i + 1
ただし、ユーザーがスペースを入力するとすぐに入力を停止したい場合は、Enterキーを押す必要はありません。
私はraw_input
を使ってこれを行うことはできませんが、私がやろうとしていることを達成する方法はありませんでした。基本的には、次の単語を入力するために、ENTERの代わりにSPACEボタンを使用して、ある単語を他の単語の後に入力できるようにしたいと思います。
ご存知ですか?前もって感謝します。
他の入力方法を使用する必要があります。 raw_inputは、eol/eodが検出される(例えば、ユーザーヒットが戻る)まで待機する。すべてのキーストロークを処理し、スペースをチェックする必要があります。 –
'raw_input'、' input'、 'sys.stdin.read(1)'のどちらでもできません。すべてのオペレーティングシステムで動作する汎用ソリューションはありません。 – pts
これはプラットフォーム固有のものです。 [参照してください](http://stackoverflow.com/questions/510357/python-read-a-single-character-from-the-user) - あなたはまた、そのようなイベントやリマッピングのためのtkinterのようなものの使用を検討することができます入力プロセス中にスペースバーにEnterキーを押してください - しかし、おそらくあなたが探しているよりも関与していて、さまざまなキーボードレイアウトのために必要な/必要があります。 – sytech