Python中while True循环未按预期运行,需实现无按键持续执行
解决循环持续执行并响应按键终止的问题
你的问题出在keyboard.read_key()是阻塞式调用——它会暂停程序运行,直到有任意按键被按下才会继续执行后续代码,所以才会出现必须按非"e"键才打印的情况。
要实现「持续打印内容,仅按"e"时终止」的需求,改用非阻塞的按键检测方法keyboard.is_pressed()即可,修改后的代码如下:
import keyboard while True: print("Hello world") # 非阻塞检测是否按下了"e"键 if keyboard.is_pressed("e"): break
说明:
keyboard.is_pressed()不会暂停程序,它只是即时检查当前是否有指定按键被按下,所以循环会持续执行打印操作- 确保已经安装了
keyboard库,若未安装可通过命令安装:pip install keyboard
内容的提问来源于stack exchange,提问作者Emasei Figo
相关产品推荐
相关产品推荐

