我使用键盘模块为代码实现了按键事件检测器。我需要在一个while
循环内的一个循环内检测keypress事件for
。代码如下
import keyboard
for i in range(5):
loop = True
while loop:
if keyboard.is_pressed("space"):
print("Iteration: {}\tSpace key pressed!".format(i))
loop = False
按space
一次键后,输出显示:
Iteration: 0 Space key pressed!
Iteration: 1 Space key pressed!
Iteration: 2 Space key pressed!
Iteration: 3 Space key pressed!
Iteration: 4 Space key pressed!
我希望它仅在按下键时才能检测到。is_pressed
一旦按下该键,它将永远设置为true。还有其他方法可以使它仅被检测到一次并将其重置is_pressed
为false吗?
如果在每次按键检查之间引入约0.2秒的延迟,以下代码将起作用。
import keyboard
import time
delay = 0.2 # or >= 0.2 secs works fine
for i in range(5):
loop = True
while loop:
if keyboard.is_pressed("space"):
print("Iteration: {}\tSpace key pressed!".format(i))
loop = False
time.sleep(delay) # adding delay between each checks
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句