Как запустить, остановить цикл по нажатию клавиши?
Как лучше реализовать запуск цикла по нажатии кнопки, при повторном нажатии остановка\выход из цикла? Я сделал таким образом, с запуском цикла проблем нет, а вот с остановкой проблема в задержки и что бы остановить приходится зажимать кнопку. Как я понимаю это надо как то отдельными потоками реализовывать? Можно пример?
def control():
while True:
if keyboard.is_pressed("a"):
while True:
print("работаю")
time.sleep(1)
if keyboard.is_pressed("a"):
print("завершил")
time.sleep(1)
break
Ответы (2 шт):
Автор решения: Михаил Петров
→ Ссылка
Сделал "воттаквот"
def control():
global IsWork
if IsWork:
IsWork = False
print("завершил")
else:
IsWork = True
keyboard.add_hotkey('a', control)
IsWork = False
while True:
if keyboard.is_pressed("a"):
while IsWork:
print("работаю")
time.sleep(1)
Автор решения: Олег Никитин
→ Ссылка
import keyboard
count = 0
while True:
count +=1
print(count)
if count == 3000:
break
elif keyboard.is_pressed("q"): # Клавиша для остановки цикла
break