Шаг 26.
Основы языка Python.
Условные операторы и циклы. Цикл for

    На этом шаге мы рассмотрим назначение и особенности использования этого оператора.

    Предположим, нужно вывести все числа от 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, который содержит все ключи словаря. Во втором способе мы просто указываем словарь в качестве параметра - на каждой итерации цикла будет возвращаться ключ, с помощью которого внутри цикла можно получить значение, соответствующее этому ключу.

    Обратите внимание на то, что элементы словаря выводятся в произвольном порядке, а не в порядке, в котором они были указаны при создании объекта. Чтобы вывести элементы в алфавитном порядке, следует отсортировать ключи с помощью функции sorted ():

    С помощью цикла for можно перебирать сложные структуры данных. В качестве примера выведем элементы списка кортежей:

    На следующем шаге мы рассмотрим функции range() и enumerate().




Предыдущий шаг Содержание Следующий шаг