Pythonで矢印キーの押下を検出する方法


方法1: keyboardモジュールを使用する方法 keyboardモジュールを使用すると、Pythonでキーボードイベントを簡単に検出することができます。

import keyboard
def check_key():
    while True:
        event = keyboard.read_event()
        if event.event_type == "down":
            if event.name == "up":
                print("Up Arrow Key Pressed")
            elif event.name == "down":
                print("Down Arrow Key Pressed")
            elif event.name == "left":
                print("Left Arrow Key Pressed")
            elif event.name == "right":
                print("Right Arrow Key Pressed")

方法2: cursesモジュールを使用する方法 cursesモジュールを使用すると、キーボードイベントをより高度に処理することができます。

import curses
def check_key():
    stdscr = curses.initscr()
    curses.noecho()
    stdscr.keypad(True)

    while True:
        key = stdscr.getch()
        if key == curses.KEY_UP:
            print("Up Arrow Key Pressed")
        elif key == curses.KEY_DOWN:
            print("Down Arrow Key Pressed")
        elif key == curses.KEY_LEFT:
            print("Left Arrow Key Pressed")
        elif key == curses.KEY_RIGHT:
            print("Right Arrow Key Pressed")

方法3: pynputモジュールを使用する方法 pynputモジュールを使用すると、キーボードやマウスのイベントを検出することができます。

from pynput import keyboard
def on_press(key):
    try:
        if key == keyboard.Key.up:
            print("Up Arrow Key Pressed")
        elif key == keyboard.Key.down:
            print("Down Arrow Key Pressed")
        elif key == keyboard.Key.left:
            print("Left Arrow Key Pressed")
        elif key == keyboard.Key.right:
            print("Right Arrow Key Pressed")
    except AttributeError:
        pass
def check_key():
    with keyboard.Listener(on_press=on_press) as listener:
        listener.join()

これらの方法を使用すると、Pythonで矢印キーの押下を検出することができます。ご自身の要件に合わせて、適切な方法を選択してください。