Python 中键盘模块面临的问题

问题描述 投票:0回答:1

我使用键盘模块来跟踪用户的按键操作。 但我在尝试这段代码时发现了这个问题:

代码

import keyboard

while True:

    key = keyboard.read_key()

    if key == 'left':
        print('left')

    elif key == 'right':
        print('right')

    elif key == 'up' :
        print('up')

    elif key == 'down' :
        print('down')

    elif key == 'q' :
        print('quit')
        break

输出

left
left
right
right
quit

感觉就像是检测到我按了左箭头和右箭头两次,而我只按了一次。

那么可能是什么问题呢? 还有其他模块我可以尝试吗?

python module keyboard keypress keyboard-events
1个回答
0
投票

您的代码处于永远运行的

while True
循环中。因此,只要您按住该键,它就会继续打印键名。也许您按住按键的时间较长,因此它会打印两次。

另一种可能性是您正在运行脚本的两个实例。

我尝试了你的代码并得到了想要的结果。

© www.soinside.com 2019 - 2024. All rights reserved.