如何在Pygame中保持'key down'?

How to hold a 'key down' in Pygame?

我使用 Pygame 1.9.6 和 Python 3.7.4。我想按住 space 栏,它不断地一遍又一遍地做同样的动作。我知道如何用 KEYDOWN 按下按钮。我查看了问题:How to efficiently hold a key in Pygame? 的答案,但无法理解一个答案:

while not done: 
    keys = key.get_pressed() 
    if keys[K_DOWN]: 
        print "DOWN" 
    for e in event.get(): 
        pass # proceed other events. 
            # always call event.get() or event.poll() in the main loop

我不明白 key.get_pressed()。它不是来自 Pygame。另外,我假设这是他们写的一个函数,但是当我按住 'Key' 时,这并没有告诉我它会继续 运行 那个动作,当 'Key' 被释放时它停止被调用的动作。关于如何实际按住按钮或如何制作按钮的任何指示?

pygame.key.get_pressed() is a function form pygame.key 模块。它 returns 代表键盘上每个键状态的布尔值列表。

如果你想测试SPACE键是否被按下,你必须通过订阅获得K_SPACE的状态:

keys = pygame.key.get_pressed() 
if keys[pygame.K_SPACE]:
    # [...]