Pygame 没有注册 Mac 键盘输入

Pygame is not registering Mac keyboard inputs

while True:
for event in pygame.event.get():
    if event.type == pygame.QUIT:
        pygame.quit()
        sys.exit()
if event.type == pygame.KEYDOWN:
    if event.key == pygame.K_SPACE:
        print("Pressed Space")
    else:
        if event.key == pygame.K_w:
            print("Pressed w")

screen.blit(background, background_rect)

pygame.display.update()

我有一个 Mac 并且出于某种原因它没有注册我的任何键盘输入,除了左移。我怎样才能解决这个问题? (Pygame)

我认为您的错误是因为缩进不正确。 for event in pygame.event.get() 循环中的事件检查需要在所有事件的 运行 循环内。

while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            sys.exit()
        
        # moved this in one level --->
        if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_SPACE:
                print("Pressed Space")
            elif event.key == pygame.K_w: # no need for an "else" then an "if"
                print("Pressed w")

    screen.blit(background, background_rect)

    pygame.display.update()