Документация по Python. Теоретические материалы, и практические задачи

Цикл For в Python

Цикл for в Python

Циклы являются неотъемлемой частью в любом языке программирования. Для чего нужны циклы? Представьте себе задачу в которой вам необходимо перебрать элементы в списке, определить какое то соответствие и вывести результат. Здача является простой, если у вас немного элементов, а что если у вас тысячу разных элементов? В данном случае, мы с вами можем организовать цикл, в котором будем перебирать элементы, проводить с каждым элементом нужные нам операции, и выводить результат, вся муторная работа будет выполнена за вас вашим скриптом. И так долой теорию, разберем принцип работы цикла на практике.

Представим себе, что у нас есть список, с именами животных.


animals = ['Кошка', 'Собака', 'Лошадь', 'Черепаха'] 
for animal in animals:
    print("Привет " + animal)

Результат:
Привет Кошка 
Привет Собака 
Привет Лошадь 
Привет Черепаха

Как видите у нас получилось в несколько строк реализовать перебор всех элементов внутри списка на автомате.  То есть, вся логика в цикле for заключается в том, что мы перебираем значения внутри списка, словаря, кортежа или множества, проводим нужную операцию, и выводим результат.  Для более четкого понимания, просмотрите анимацию, в которой довольно доступно, и просто показаны разные варианты цикла. Важно запомнить! После запуска цикла, не забывайте про отступы.

Функция range

В целом мы с вами разобрались с тем, как работает цикл for, вместе с ней довольно часто используется функция range.  С помощью данной функции, мы можем генерировать числа, например:

print (list(range(10))) # Сгенерирует нам числа от 0 до 9(10 чисел)

Функция range(), позволяет нам генерировать числа не только в строгой последовательности, мы можем задать начало, конец, и шаг генерации, выглядит это так:


print(list(range(2,50, 4)))  # от 2-х до 50 с шагом 4
Результат:

[2, 6, 10, 14, 18, 22, 26, 30, 34, 38, 42, 46]

Если мы не задаем шаг, то в Python этот шаг по умолчанию равен 1. Так же мы можем конечно использовать данную функцию вместе с циклом for. Пример:


for i in range(20): # При каждой итерации цикла, в переменную i попадает сгенерированное числа от 0 до 19.
    if i >= 10: # При каждой итерации сравнивание наше в i с нашим условием
print(i) # Если число находящееся в данной итерации соответствует нашему условию, отправляем его в печать

"""
То есть, при первом проходе цикла, переменная i равна 0, соответственно 0 не является большим или равным 10
поэтому он не печатается. При втором проходе цикла, i равен уже 1, но 1 тоже не подходит под наше условие, поэтому
его тоже пропускаем. Через некоторое время, цикл доходит например до 11ой итерации, и в этом проходе, наша переменная
уже равно 10 что подходит нашему условию, и соответственно мы его пропускаем дальше.
"""

Результат:

10
11
12
13
14
15
16
17
18
19

В цикле выше, мы свами рассмотрели сразу два момента, это использование функции range(), и условие if, думаю вам уже понятно, что внутри цикла мы можем создавать уже знакомые нам конструкции с условиями.  Рассмотрим пример, в котором мы скомбинируем цикл for, список, и конструкцию if…else. 


student_name = 'Тимур' # Имя студента

student_list = ['Саша','Таня','Настя','Тимур', 'Вадим'] # Список студентов

for student in student_list: # Перебираем список студентов, и на каждом проходе цикла поочередно заносим всех студентов в переменную student

    if student == student_name: # если значение student == student_name

        print(f' Студент {student_name} найден.') # Условие выполнено

        break # Остановка цикла

    else:

        print(f' Студент {student_name} не найден.') # Результат, если условие не выполнено

Результат:

Студент Тимур найден.

Как вы уже могли заметить, мы использовали оператор break, данный оператор позволяет нам остановить цикл, если например выполнено условие нашего цикла. В данном примере, мы нашли нужного студента, и нам незачем продолжать его поиск, поэтому мы просто останавливаем цикл, выходим из него, и выводим результат.

Сегодня мы с вами прошли довольно важную тему, поэтому советую вам немного расслабиться, и посмотреть нарезки лучших моментов с мультсериала Рик и Морти.

Цикл while

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *