Знакомство с циклами "For"
На этом этапе вы изучите циклы for, которые используются в Python для перебора элементов последовательностей (таких как списки, строки или диапазоны).
Начнем с простого цикла for, использующего диапазон. В интерпретаторе Python введите:
for i in range(5):
print(i)
Результат:
0
1
2
3
4
Функция range(5) генерирует последовательность чисел от 0 до 4, и цикл поочередно проходит по каждому числу.
Функция range() может принимать несколько аргументов для указания начала, конца и шага. Попробуем другой вариант:
for i in range(1, 10, 2):
print(i)
Результат:
1
3
5
7
9
- Функция
range(1, 10, 2) создает последовательность чисел, начиная с 1, до 10 (не включая само число 10), с шагом 2.
Теперь попробуем перебрать элементы списка:
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(f"I like {fruit}")
Результат:
I like apple
I like banana
I like cherry
В данном случае цикл проходит по каждому элементу списка fruits.
Циклы for также отлично работают со строками:
for char in "Python":
print(char.upper())
Результат:
P
Y
T
H
O
N
Этот цикл перебирает каждый символ в строке "Python".
Давайте объединим цикл for с условными операторами:
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for num in numbers:
if num % 2 == 0:
print(f"{num} is even")
else:
print(f"{num} is odd")
Результат:
1 is odd
2 is even
3 is odd
4 is even
5 is odd
6 is even
7 is odd
8 is even
9 is odd
10 is even
Этот цикл проверяет каждое число в списке и выводит сообщение о том, является ли оно четным или нечетным.
Как работает оператор остатка от деления (%): Символ % называется оператором взятия остатка (модуля). Он возвращает остаток, полученный при делении одного числа на другое. Например:
5 % 2 равно 1 (так как 5 делится на 2 дважды с остатком 1)
4 % 2 равно 0 (так как 4 делится на 2 нацело)
10 % 3 равно 1 (так как 10 делится на 3 трижды с остатком 1)
Когда мы пишем num % 2 == 0, мы фактически спрашиваем: "Остается ли 0 при делении этого числа на 2?". Если да, то число четное. Если остаток равен 1, то число нечетное. Оператор == используется для сравнения значений на равенство.