我試圖創建一個熱鍵來停止我的腳本,這是我目前的代碼。
import time
import鍵盤
running = True import時間
def stop(event)。
global running
running = False。
print("stop"/span>)
#按ctrl esc來停止腳本。
keyboard.add_hotkey("ctrl esc"/span>, lambda: stop)
while running:
time.sleep(2)
print("Hello"/span>)
time.sleep(2)
uj5u.com熱心網友回復:
add_hotkey期望一個回呼作為第二個引數,所以你必須把停止函式傳給它,另一方面,當回呼被呼叫時,沒有事件被傳遞。
比使用布爾變數更好的解決方案是使用threading.Event,因為它是執行緒安全的,因為回呼是在一個輔助執行緒中呼叫的。
import threading
import時間
import鍵盤
event = threading.Event()
def stop()。
event.set()
print("stop")
keyboard.add_hotkey("ctrl esc"/span>, stop)
while not event.is_set()。
time.sleep(2)
print("Hello"/span>)
time.sleep(2)
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/306639.html
標籤:
