首页 > 解决方案 > 获取 Pygame 键盘输入并检查它是否是数字

问题描述

我正在尝试使用 Pygame 使用以下命令获取键盘输入:

if event.type == pg.KEYDOWN:
    # ADD KEYBOARD EVENTS
    keys = pg.key.get_pressed()

我想检查按下的按钮是否代表数字,我已经知道如何使用try/except命令检查字符串是否代表数字,但是,在我的代码keys中不是字符串,它是一个巨大的元组 - 我不知道如何以一种有效的方式获得它,因为每次我在互联网上查看如何获取键盘输入时,它们都需要等同keys于类似的东西pygame.pygame.K_LEFT,我不想对每个数字以及数字键盘中的每个数字都这样做(右边)。

有没有一种有效的方法来确定用户是否点击了一个数字?谢谢!

标签: pythonpython-3.xpygame

解决方案


pygame.key.get_pressed()返回一个包含所有键盘按钮状态的列表。这不是为了获取键盘事件的键。按下的键可以从对象的key属性中获取pygame.event.Event

if event.type == pg.KEYDOWN:
    if event.key == pg.K_a:
        # [...] 

unicode包含一个字符串,它是完全翻译的字符:

if event.type == pg.KEYDOWN:
    if event.unicode == 'a':
        # [...] 

另请参阅pygame.key


推荐阅读