を試してみました私は2つの文字で表される矢印キーのを考え出したので、私は最初の文字を入れている場合、それが読み込まれるようにthis solutionを修正しました2番目(そして3番目はLinux?)に変換して、プラットフォームに依存しない文字列に変換します。
# Find the right getch() and getKey() implementations
try:
# POSIX system: Create and return a getch that manipulates the tty
import termios
import sys, tty
def getch():
fd = sys.stdin.fileno()
old_settings = termios.tcgetattr(fd)
try:
tty.setraw(fd)
ch = sys.stdin.read(1)
finally:
termios.tcsetattr(fd, termios.TCSADRAIN, old_settings)
return ch
# Read arrow keys correctly
def getKey():
firstChar = getch()
if firstChar == '\x1b':
return {"[A": "up", "[B": "down", "[C": "right", "[D": "left"}[getch() + getch()]
else:
return firstChar
except ImportError:
# Non-POSIX: Return msvcrt's (Windows') getch
from msvcrt import getch
# Read arrow keys correctly
def getKey():
firstChar = getch()
if firstChar == b'\xe0':
return {"H": "up", "P": "down", "M": "right", "K": "left"}[getch()]
else:
return firstChar
https://stackoverflow.com/help/mcveを参照して投稿を編集してください。 – SirKometa