3.2.1.4 Циклы в Python | for
Создана 29.04.2023
Отредактирована 20.05.2023
Отредактирована 20.05.2023
Donate for site my friends.
https://www.donationalerts.com/r/nocip
Зацикливание кода с помощью for
Другой вид цикла, доступный в Python, исходит из наблюдения, что иногда важнее подсчитывать "обороты" цикла, чем проверять условия.
Представьте, что тело цикла нужно выполнить ровно сто раз. Если вы хотите использовать для этого цикл while, это может выглядеть так:
i = 0
while i < 100:
# do_something()
i += 1
Было бы здорово, если бы кто-нибудь мог сделать за вас этот скучный подсчет. Это возможно?
Конечно, есть - для такого рода задач специальный цикл, в честь которого он и назван.
На самом деле цикл for предназначен для выполнения более сложных задач - он может "просматривать" большие коллекции данных, элемент за элементом. Мы скоро покажем вам, как это сделать, а сейчас представим более простой вариант его применения.
Взгляните на фрагмент:
for i in range(100):
# do_something()
pass
Есть несколько новых элементов. Расскажем о них:
Взгляните на приведенный ниже фрагмент. Можете ли вы предсказать его результат?
for i in range(10):
print("The value of i is currently", i)
Запустите код, чтобы проверить, были ли вы правы.
Примечание:
for i in range(2, 8):
print("The value of i is currently", i)
В этом случае первый аргумент определяет начальное (первое) значение управляющей переменной.
Последний аргумент показывает первое значение, которому управляющая переменная не будет присвоена.
Примечание: функция range() принимает только целые числа в качестве аргументов и генерирует последовательности целых чисел.
Вы можете угадать результат работы программы? Запустите её, чтобы проверить, были ли вы правы сейчас.
Первое показанное значение - 2 (взято из первого аргумента range() )
Последний - 7 (хотя второй аргумент range() равен 8).
Другой вид цикла, доступный в Python, исходит из наблюдения, что иногда важнее подсчитывать "обороты" цикла, чем проверять условия.
Представьте, что тело цикла нужно выполнить ровно сто раз. Если вы хотите использовать для этого цикл while, это может выглядеть так:
i = 0
while i < 100:
# do_something()
i += 1
Было бы здорово, если бы кто-нибудь мог сделать за вас этот скучный подсчет. Это возможно?
Конечно, есть - для такого рода задач специальный цикл, в честь которого он и назван.
На самом деле цикл for предназначен для выполнения более сложных задач - он может "просматривать" большие коллекции данных, элемент за элементом. Мы скоро покажем вам, как это сделать, а сейчас представим более простой вариант его применения.
Взгляните на фрагмент:
for i in range(100):
# do_something()
pass
Есть несколько новых элементов. Расскажем о них:
- ключевое слово for открывает цикл for; примечание - после него нет условия; вам не нужно думать об условиях, поскольку они проверяются изнутри, без какого-либо вмешательства;
- любая переменная после ключевого слова for является управляющей переменной цикла; он считает повороты петли и делает это автоматически;
- ключевое слово in вводит элемент синтаксиса, описывающий диапазон возможных значений, присваиваемых управляющей переменной;
- функция range() (это особая функция) отвечает за генерацию всех желаемых значений управляющей переменной; в нашем примере функция создаст (мы даже можем сказать, что она будет кормить цикл) последующие значения из следующего набора: 0, 1, 2 .. 97, 98, 99; примечание: в этом случае функция range() начинает свою работу с 0 и завершает ее за один шаг (одно целое число) до значения своего аргумента;
- обратите внимание на ключевое слово pass внутри тела цикла - оно вообще ничего не делает; это пустая инструкция - мы поместили ее сюда, потому что синтаксис цикла for требует как минимум одной инструкции внутри тела (кстати, if, elif, else и while выражают то же самое).
Взгляните на приведенный ниже фрагмент. Можете ли вы предсказать его результат?
for i in range(10):
print("The value of i is currently", i)
Запустите код, чтобы проверить, были ли вы правы.
Примечание:
- цикл был выполнен десять раз (это аргумент функции range() )
- значение последней управляющей переменной - 9 (не 10, поскольку оно начинается с 0, а не с 1)
for i in range(2, 8):
print("The value of i is currently", i)
В этом случае первый аргумент определяет начальное (первое) значение управляющей переменной.
Последний аргумент показывает первое значение, которому управляющая переменная не будет присвоена.
Примечание: функция range() принимает только целые числа в качестве аргументов и генерирует последовательности целых чисел.
Вы можете угадать результат работы программы? Запустите её, чтобы проверить, были ли вы правы сейчас.
Первое показанное значение - 2 (взято из первого аргумента range() )
Последний - 7 (хотя второй аргумент range() равен 8).
««« Назад | Вперед »»» |
3.2.1.5 Циклы в Python | for - продолжение |