私はPythonを初めて使用し、Pythonでゲームとメニューを作成しました。質問は、(raw_)input()を使用するには、キーを押すたびにEnterキーを押す必要があるということです。下矢印を押すと、すぐに次のメニュー項目が選択されるか、ゲーム内で下に移動するようにしたいと思います。現時点では、「down」と入力してEnterキーを押す必要があります。私もかなり多くの調査を行いましたが、単一のkeyDown()メソッドを実現するためだけに、巨大なモジュール(pygameなど)をダウンロードしたくありません。それで、私が見つけられなかったもっと簡単な方法はありますか?
編集:msvcrt.getch()
それがトリックを行う
ことがわかった。keyDown()ではありませんが、機能します。しかし、私もそれを使用する方法がわかりません、それはかなり奇妙に思えます、ここで何か助けはありますか?これは私が現時点で得たものです:
from msvcrt import getch
while True:
key = getch()
print(key)
しかし、それは私にこれらすべてのナンセンスバイトを与え続けます、例えば、下矢印はこれです:
b'\xe0'
b'P'
そして、それらの使い方がわかりません。chr()と比較したり、ord()を使用したりしましたが、実際には比較できません。私がやろうとしていることは基本的にこれです:
from msvcrt import getch
while True:
key = getch()
if key == escape:
break
elif key == downarrow:
movedown()
elif key == 'a':
...
など...何か助けはありますか?