@Elbro

Как сделать Python loop +1/-1?

Есть цикл
imList = ['1.jpg', '2.jpg', '3.jpg']
 for i in imList:
    try:
        img = cv2.imread(i)
        cv2.imshow('img', img))
        cv2.waitKey(0)
except Exception as e:
        print(e)

Как сделать так, чтобы на клик "а" он шел в направлении от 1 к 3, а на клик "б" шел от 3 к 1

Пример
1+а = 2
2+а = 3
3+б = 2
2+б = 1

Цель идти от 1 до 100, но в случае если захотел вернуться на 50 обратно к 49 не перезапускать весь цикл
  • Вопрос задан
  • 122 просмотра
Решения вопроса 1
Vindicar
@Vindicar
RTFM!
Избавиться от цикла for, вместо него используй while True, и внутри вручную меняй индекс текущего изображения в диапазоне от 0 до len(imList)-1.
А вообще у тебя код кривой.
cv2.imshow() требует два параметра - заголовок окна и загруженное в память изображение (массив пикселей).
cv2.waitKey() и cv2.waitKeyEx() возвращают код нажатой клавиши, анализируй его, чтобы понять, что делать (идти вперёд, идти назад, прервать цикл).
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы