чо за циклы змеиные
в питоне существует два вида циклов: for и while. В чем собсна различия и что это вообще такое.
Для начала нужно разобраться в том, что вообще такое цикл. Код в Python обычно выполняется последовательно: первая строка, потом вторая, третья и так далее. Но некоторые конструкции позволяют нарушать этот порядок, чтобы совершать более сложные операции.
Например, циклы выполняют один и тот же блок кода несколько раз.
Любой цикл состоит из двух частей:
- условие — начальный параметр; цикл запустится только при его выполнении и закончится, как только условие перестанет выполняться;
- тело — сама программа, которая выполняется внутри цикла.
Цикл while
Цикл while или цикл с условием выполняется пока выполняется какое-то условие.
Например, во время гонок водители не сходят с трассы, пока не проедут 5 кругов.
Начинаем со старта и проезжаем первый круг, потом второй, потом третий и так далее. Когда мы проехали пятый круг, мы выходим из гонки. На питоне такой алгоритм может выглядеть так:
krug = 1
while krug < 6:
print("номер круга:", krug)
krug += 1
#вывод:
#номер круга: 1
#номер круга: 2
#номер круга: 3
#номер круга: 4
#номер круга: 5Сначала мы проехали круг под номером 1. Далее мы выводим номер круга и проезжаем следующий, пока не дойдем до последнего. Когда мы дошли до последнего круга мы выходим из гонки(т.е. из цикла)
Как только krug становится равным 6, условие krug < 6 перестаёт выполняться, и цикл завершается.
Цикл for
Цикл for — перебор элементов
Этот цикл проходит по каждому элементу коллекции (например, списку, строке или диапазону) и выполняет код для каждого элемента.
fruits = ["яблоко", "банан", "вишня"]
for fruit in fruits: # Для каждого элемента в списке
print(fruit)То есть, он берет, например, список и делает какие-то действия с каждым элементом из этого списка. В нашем случае он просто выводит все фрукты по очереди.
яблоко банан вишня
Что за range?
Цикл for i in range() — одна из самых часто используемых конструкций в Python. Она позволяет выполнять блок кода заданное количество раз или перебирать числа в определённом диапазоне.
Функция range() генерирует последовательность чисел. Она может принимать три параметра:
range(start, stop, step)
start— начало диапазона (по умолчанию0).stop(обязательно) — конец диапазона (не включается в результат).step— шаг (по умолчанию1).
Вот например что выведет следующая программа:
for i in range(0, 10, 2): # Чётные числа от 0 до 9
print(i)Вывод: 0 2 4 6 8
Мы как бы говорим циклу: " начни с числа 0 и иди до числа 10(не включительно) с шагом 2. ". Он собсна так и делает, начинает с нуля, далее, он вспоминает, что мы велели ему иди с шагом 2, т.е. идти через число. А что стоит через число от нуля? Правильно, двойка, а дальше что? Правильно, четверка. Ну и так далее до 9. (ПОМНИМ, ЧТО ЧИСЛО, КОТОРОЕ СТОИТ В STOP НЕ ВКЛЮЧАЕТСЯ.)