Как добавить условие выхода из цикла while
import pyautogui
from time import sleep
while not pyautogui.locateCenterOnScreen("done_canceling.png", confidence=0.95):
pyautogui.press('2')
sleep(1)
print("Все лоты отменены")
Пишу кликера для игры. Данный скрипт считывает изображение с экрана и пока на экране не появилось изображение done_canceling.png скрипт нажимает кнопку '2' раз в секунду. Иногда это изображение не появляется на экране и цикл выполняется бесконечно. Как написать условие выхода из цикла например спустя 100 нажатий на кнопку '2' или спустя 2 минуты? Возможно ли это?
Ответы (2 шт):
Автор решения: Аске
→ Ссылка
думаю это решение вам должно помочь
import pyautogui
from time import sleep
counter = 0
while counter < 100 and not pyautogui.locateCenterOnScreen("done_canceling.png", confidence=0.95):
pyautogui.press('2')
sleep(1)
counter+=1
print("Все лоты отменены")
Автор решения: CrazyElf
→ Ссылка
Ещё вариант - считать через цикл for, чтобы не писать самому инициализацию, проверку и инкремент счётчика:
import pyautogui
from time import sleep
for counter in range(100):
if pyautogui.locateCenterOnScreen("done_canceling.png", confidence=0.95):
break
pyautogui.press('2')
sleep(1)
print("Все лоты отменены")