На этом шаге мы рассмотрим назначение и особенности использования этого оператора.
Предположим, нужно вывести все числа от 1 до 100 по одному на строке. Обычным способом пришлось бы писать 100 строк кода:
print(1) print(2) . . . . print(100)
При помощи циклов то же действие можно выполнить одной строкой кода:
for х in range (1, 101): print (x)
Иными словами, циклы позволяют выполнить одни и те же инструкции многократно. Цикл for применяется для перебора элементов последовательности и имеет такой формат:
for <Текущий элемент> in <Последовательность>: <Инструкции внутри цикла> [else: <Блок, выполняемый, если не использовался оператор break> ]
Здесь присутствуют следующие конструкции:
Приведем пример перебора букв в слове:
# -*- coding: utf-8 -*- for s in "str": print(s, end=" ") else: print("\nЦикл выполнен")
Результат выполнения:

Рис.1. Результат выполнения
Теперь выведем каждый элемент списка и кортежа на отдельной строке:
for x in [1, 2, 3]: print(x) for y in (1, 2, 3): print(y)

Рис.2. Результат выполнения
Цикл for позволяет также перебрать элементы словарей, хотя словари и не являются последовательностями. В качестве примера выведем элементы словаря двумя способами. Первый способ использует метод keys (), возвращающий объект dictkeys, который содержит все ключи словаря. Во втором способе мы просто указываем словарь в качестве параметра - на каждой итерации цикла будет возвращаться ключ, с помощью которого внутри цикла можно получить значение, соответствующее этому ключу.
>>> arr = {"x": 1, "y": 2, "z": 3}
>>> arr.keys()
dict_keys(['x', 'y', 'z'])
>>> for key in arr.keys(): # Использование метода keys()
print(key, arr[key])
y 2
x 1
z 3
>>> for key in arr: # Словари также поддерживают итерации
print(key, arr[key])
y 2
x 1
z 3
Обратите внимание на то, что элементы словаря выводятся в произвольном порядке, а не в порядке, в котором они были указаны при создании объекта. Чтобы вывести элементы в алфавитном порядке, следует отсортировать ключи с помощью функции sorted ():
>>> arr = {"x": 1, "y": 2, "z": 3}
>>> for key in sorted(arr):
print(key, arr[key])
x 1
y 2
z 3
С помощью цикла for можно перебирать сложные структуры данных. В качестве примера выведем элементы списка кортежей:
>>> arr = [(1, 2), (3, 4)] >>> for a, b in arr: print(a, b) 1 2 3 4
На следующем шаге мы рассмотрим функции range() и enumerate().