您可以使用箭头键调用函数吗?

Can you call functions using the arrow keys?

我正在尝试制作一款高尔夫游戏,在该游戏中,当用户按下向左或向右箭头时,实际的箭头将指向您建议的位置。然后球将通过按下 space 杆释放并滚开,希望在高尔夫球洞中被捕获。但这并不是困扰我的问题,这是第一部分;箭头的瞄准。 我已经制作了 10 个指向不同方向的不同功能,但问题是用户交互。我需要使箭头(功能)通过箭头键移动。我将这些函数命名为:

one_one
one_two
one_three

等等。我如何调用它们并删除最后一个,但更重要的是,如何使该过程重复进行? 提前致谢! P.S 我正在使用 Python-3 和 VS 代码。

你不需要循环; keyboard 模块使用事件触发激活而不是轮询。

import keyboard

def on_left_arrow(e):
    print('Hello World')

keyboard.on_press_key("left", on_left_arrow)

对于你问题的第二部分,你可以把方向写在 'queue';

directions = ['N', 'E', 'W', 'S']

def on_left_arrow(e):
    # pop the first item out of the list 
    current = direction.pop(0)

    # move it to the end
    directions = directions.append(current)

    print(current) 

def on_right_arrow(e):
    # pop the last item
    current = direction.pop()

    # move it to the beginning
    directions = directions.insert(0, current)

    print(current)

请注意 keyboard 库需要 sudo