Python: Цикл for

Итерации по последовательностям и выполнение повторяющихся действий

Цикл for в Python

Цикл for используется для итерации по элементам последовательности (список, строка, кортеж, словарь и др.) и выполнения повторяющихся действий.

Базовый синтаксис цикла for

Цикл for в Python имеет следующий синтаксис:

Блок-схема цикла for
# Простейший пример цикла for
for i in range(5):
    print(f"Итерация №{i}")

print("Цикл завершен")
Итерация №0
Итерация №1
Итерация №2
Итерация №3
Итерация №4
Цикл завершен
Важно: В Python цикл for отличается от цикла for в других языках программирования. Это скорее "цикл foreach", который проходит по элементам последовательности.

Итерируемые объекты

Цикл for может работать с разными типами последовательностей:

Тип Пример Результат итерации
Строка "hello" По одному символу
Список [1, 2, 3] По одному элементу
Кортеж (4, 5, 6) По одному элементу
Словарь {"a": 1, "b": 2} По ключам (или парам ключ-значение)
range range(5) Числа в указанном диапазоне
# Примеры итерации по разным типам
# Итерация по строке
word = "Python"
for letter in word:
    print(letter)

# Итерация по списку
numbers = [10, 20, 30]
for num in numbers:
    print(num * 2)

# Итерация по словарю
grades = {"Маша": 5, "Петя": 4, "Вася": 3}
for name in grades:
    print(f"{name}: {grades[name]}")
P
y
t
h
o
n
20
40
60
Маша: 5
Петя: 4
Вася: 3

Функция range()

range() создает последовательность чисел, часто используемую в циклах for:

# range(stop) - от 0 до stop-1
for i in range(5):
    print(i)

# range(start, stop) - от start до stop-1
for i in range(3, 7):
    print(i)

# range(start, stop, step) - с шагом step
for i in range(0, 10, 2):
    print(i)

# Отрицательный шаг
for i in range(5, 0, -1):
    print(i)
0
1
2
3
4
3
4
5
6
0
2
4
6
8
5
4
3
2
1

Вложенные циклы

Циклы могут содержать другие циклы внутри себя:

# Таблица умножения
for i in range(1, 6):
    for j in range(1, 6):
        print(f"{i} x {j} = {i * j}")
    print()  # Пустая строка между таблицами
1 x 1 = 1
1 x 2 = 2
1 x 3 = 3
1 x 4 = 4
1 x 5 = 5

2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
2 x 4 = 8
2 x 5 = 10

3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
3 x 4 = 12
3 x 5 = 15

4 x 1 = 4
4 x 2 = 8
4 x 3 = 12
4 x 4 = 16
4 x 5 = 20

5 x 1 = 5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 25

Операторы break и continue

break - досрочно прерывает выполнение цикла
continue - пропускает текущую итерацию и переходит к следующей

# Пример break - поиск первого четного числа
numbers = [1, 3, 5, 6, 7, 9, 10]
for num in numbers:
    if num % 2 == 0:
        print(f"Найдено четное число: {num}")
        break
    print(f"Проверяем {num}")

# Пример continue - печать только нечетных чисел
for i in range(10):
    if i % 2 == 0:
        continue
    print(i)
Проверяем 1
Проверяем 3
Проверяем 5
Найдено четное число: 6
1
3
5
7
9

Практические задания

Задание 1: Сумма чисел

Напишите программу, которая:
1. Запрашивает у пользователя число N
2. Вычисляет сумму всех чисел от 1 до N
3. Выводит результат

n = int(input("Введите число N: "))
total = 0

for i in range(1, n + 1):
    total += i

print(f"Сумма чисел от 1 до {n} равна {total}")

Задание 2: Поиск простых чисел

Напишите программу, которая:
1. Запрашивает у пользователя число N
2. Находит все простые числа меньше N
3. Выводит их в одну строку через запятую

n = int(input("Введите число N: "))
primes = []

for num in range(2, n):
    is_prime = True
    for i in range(2, int(num ** 0.5) + 1):
        if num % i == 0:
            is_prime = False
            break
    if is_prime:
        primes.append(str(num))

print("Простые числа:", ", ".join(primes))

Задание 3: Рисуем фигуры

Напишите программу, которая:
1. Запрашивает у пользователя размер фигуры (число N)
2. Рисует прямоугольный треугольник из звездочек:
*
**
***
... (N строк)

n = int(input("Введите размер фигуры: "))

for i in range(1, n + 1):
    print('*' * i)

Материалы урока

  • Синтаксис цикла for
  • Итерируемые объекты
  • Функция range()
  • Вложенные циклы
  • Операторы break и continue
Бесплатный урок
Записаться на курс

Следующий урок

Цикл while

Изучаем циклы с условием выполнения

Перейти