Я думаю, лучше продемонстрировать это с помощью различных тестов. Таким образом, цикл for
может иметь блок else
. блок else
выполняется только в том случае, если цикл завершен нормально. IE не было break
в цикле. если мы создадим функцию, которая принимает список и делитель. мы видим, что если условие if
соответствует и мы печатаем, а затем прерываем, блок else
никогда не запускается. Только если мы пройдем весь цикл без break
, то else
будет выполнено
def is_divisable_by(nums, divider):
for num in nums:
if num % divider == 0:
print(num, "is divsiable by ", divider)
break
else:
print("none of the numbers", nums, "were divisable by", divider)
numbers = [1, 6, 3]
numbers2 = [7, 8, 10]
is_divisable_by(numbers, 2)
is_divisable_by(numbers, 7)
is_divisable_by(numbers2, 4)
is_divisable_by(numbers2, 6)
ВЫХОД
6 is divsiable by 2
none of the numbers [1, 6, 3] were divisable by 7
8 is divsiable by 4
none of the numbers [7, 8, 10] were divisable by 6