如何通過諸如 之類的按鍵來打破這個循環Esc?此示例捕獲擊鍵,但從未將變量傳遞到 while 循環中。from pynput import keyboardcount = 0stop = 0while True: def press_callback(key): if key == keyboard.Key.esc: def stop_loop(): stop = 1 return stop print('You pressed "escape"! You must want to quit really badly...') stop = stop_loop() return stop count +=1 print (count) if stop == 1: break if count == 1: l = keyboard.Listener(on_press=press_callback) l.start()我使用的是 Ubuntu 18.04。
2 回答

暮色呼如
TA貢獻1853條經驗 獲得超9個贊
stop_loop像這樣更新你的方法:
def stop_loop():
? global stop
? stop = 1
? return stop
如果您不聲明,那么您將在方法內創建一個新的局部變量global stop,而不是更新在文件開頭定義的變量。stopstopstop_loop

蕪湖不蕪
TA貢獻1796條經驗 獲得超7個贊
這是最終的工作解決方案:
from pynput import keyboard
count = 0
stop = 0
def press_callback(key):
if key == keyboard.Key.esc:
def stop_loop():
global stop
stop = 1
return stop
print('Get Out')
stop = stop_loop()
return stop
l = keyboard.Listener(on_press=press_callback)
l.start()
while True:
count += 1
print (count)
if stop == 1:
break
添加回答
舉報
0/150
提交
取消