Установка флага перед выходом из цикла
На этом этапе вы научитесь использовать флаговую переменную для указания, был ли выполнен оператор break
внутри цикла. Это может быть полезно, когда вам нужно знать, был ли цикл выполнен полностью или был прерван.
Создадим файл Python с именем flag_example.py
в каталоге ~/project
с помощью редактора VS Code.
## Filename: flag_example.py
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
found = False ## Initialize a flag variable
for number in numbers:
if number > 5:
found = True ## Set the flag to True when number is greater than 5
break ## Exit the loop
print(number)
if found:
print("Found a number greater than 5")
else:
print("No number greater than 5 was found")
В этом коде:
- Мы инициализируем булеву переменную
found
со значением False
. Эта переменная будет служить нашим флагом.
- Мы проходим по списку чисел.
- Если мы находим число больше 5, мы устанавливаем
found
в значение True
и затем выходим из цикла с помощью break
.
- После цикла мы проверяем значение
found
. Если оно равно True
, это означает, что мы встретили число больше 5 и вышли из цикла. В противном случае это означает, что цикл был выполнен полностью, не найдя ни одного числа больше 5.
Теперь запустим скрипт с помощью следующей команды в терминале:
python flag_example.py
Вы должны увидеть следующий вывод:
1
2
3
4
5
Found a number greater than 5
Теперь изменим список numbers
так, чтобы он не содержал чисел больше 5:
## Filename: flag_example.py
numbers = [1, 2, 3, 4, 5]
found = False ## Initialize a flag variable
for number in numbers:
if number > 5:
found = True ## Set the flag to True when number is greater than 5
break ## Exit the loop
print(number)
if found:
print("Found a number greater than 5")
else:
print("No number greater than 5 was found")
Запустим скрипт еще раз:
python flag_example.py
Вы должны увидеть следующий вывод:
1
2
3
4
5
No number greater than 5 was found
В этом примере показано, как флаговая переменная может быть использована для отслеживания выполнения оператора break
, что позволяет вам предпринимать разные действия в зависимости от того, был ли цикл выполнен полностью или был прерван.