Циклы for и while. Цикл for
Скачать 0.54 Mb.
|
Переменная циклаДавайте еще раз взглянем на базовую структуру цикла for: for название_переменной_цикла in range(количество повторений): блок кода Не совсем понятно, для чего нужна и как работает переменная цикла. Рассмотрим следующий код: for i in range(10): print(i) Результатом выполнения такого кода будет: 0 1 2 3 4 5 6 7 8 9 Когда цикл впервые начинает работу Python устанавливает значение переменной цикла i = 0. Каждый раз когда мы повторяем тело цикла Python увеличивает значение переменной на 1. Почему большинство программистов начинают цикл с 0, а не с 1? Раньше некоторые начинали цикл с 1, а некоторые с 0. Те и другие приводили весьма изощренные аргументы, споря о том, какой способ лучше. Но в конце концов победили сторонники второго варианта. С тех пор большинство начинает циклы с 0. В частности, в Python цикл for начинается с 0, однако в будущих уроках вы узнаете как это изменить. Поскольку переменная цикла i увеличивается на 1 каждый раз, то ее можно использовать для отслеживания номера итерации, на которой мы находимся в циклическом процессе. Рассмотрим следующий код: for i in range(10): print(i, '-- Привет') Результатом выполнения такого кода будет: 0 -- Привет 1 -- Привет 2 -- Привет 3 -- Привет 4 -- Привет 5 -- Привет 6 -- Привет 7 -- Привет 8 -- Привет 9 -- Привет Если мы хотим начать с 1, то можем написать код: for i in range(10): print(i + 1, '-- Привет') Результатом выполнения такого кода будет: 1 -- Привет 2 -- Привет 3 -- Привет 4 -- Привет 5 -- Привет 6 -- Привет 7 -- Привет 8 -- Привет 9 -- Привет 10 -- Привет Обратите внимание, за счет выражения i + 1, мы начинаем вывод с 1, а не с 0. Имена переменных циклаРанее говорилось, что имена переменных должны носить осмысленный характер и описывать их назначение. Однако для переменных цикла иногда делается исключения. В программировании для переменных цикла обычно используют буквы i, j, k. Следующие две программы абсолютно одинаковые: в первой программе переменная цикла имеет название i, во второй программе number: for i in range(10): for number in range(10): print(i) print(number) Результатом выполнения обеих программ будет: 0 1 2 3 4 5 6 7 8 9 Почему для переменной циклов зарезервированы буквы i, j, k? Дело в том, что раньше программы использовались для математических расчетов, а в математике буквы a, b, c и x, y, z уже зарезервированы для других целей. Поэтому программисты выбрали для этой цели переменные i, j, k и это стало общепринятой практикой. Бывают ситуации когда переменная цикла не используется в теле цикла. В таком случае, вместо того, чтобы давать ей имя, мы можем указать символ нижнего подчеркивания _: for _ in range(5): print('Python - awesome!') Результатом выполнения такого кода будет: Python - awesome! Python - awesome! Python - awesome! Python - awesome! Python - awesome! Если переменная цикла не используется в теле цикла, то указывайте вместо нее символ нижнего подчеркивания _. |