Условия и циклы | Вводный курс ML

Условия и циклы

Все курсы > Вводный курс > Занятие 6

Сегодня мы поговорим про условия и циклы в Питоне.

Условия с if

Вы наверное помните, что говоря о принципе машинного обучения, мы указывали на ограничения «традиционных» компьютеров, не использующих технологии машинного обучения. Они строго следуют заданной программе.

В качестве примера, мы установили порог зарплаты заёмщика на уровне 90 тыс. рублей, и на его основе решали, кому выдать кредит, а кому отказать. Напомню, как это выглядело с помощью блок-схемы.

порог зарплаты, условия в Питоне

Теперь пропишем этот сценарий на Питоне.

Откроем ноутбук к этому занятию

Итак, чтобы установить порог зарплаты на уровне 90 тыс. рублей, создадим переменную для зарплаты заемщика (пусть это будет salary) и присвоим ей произвольное значение (напрмер, 75). Далее мы пишем слово if и задаем само условие salary >= 90. Ставим двоеточие.

На следующей строке делаем отступ с помощью клавиши Tab (это обязательно) и пишем print('Выдать кредит'). Далее с новой строки пишем else (что делать в противном случае), двоеточие и строкой ниже опять с отступом print('Отказать').

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

конструкция if-else в Питоне

А теперь еще раз про логику программы. Создаем переменную с уровнем зарплаты, если зарплата больше или равна 90, выводим на экран «Выдать кредит», если меньше, выводим «В кредите отказать».

Исполнив этот код (Shift + Enter), мы получим:

В качестве упражнения, поменяйте зарплату с 75 на 95 тысяч и запустите код. Кредит должны одобрить.

Все, несложная программа по одобрению кредитов готова.

Цикл for

Помимо числовых переменных и строк, мы также познакомились со списками и словарями. Было бы неплохо уметь выводить не только определенный элемент списка или словаря (мы это делали по индексу и ключу соответственно), но и посмотреть элементы один за другим. Как это сделать?

Сначала поработаем со списками. Воспользуемся списком покупок из предыдущего занятия.

Начнем наш цикл с ключевого слова for, после него напишем i in veg_list:. По сути, мы скажем компьютеру: «Пока есть элементы (i) в списке ( veg_list), выполни определенное действие». Само действие пишется на следующей строке с отступом. В нашем случае будем выводить каждый элемент списка один за другим через print(i).

Результат:

Важные пояснения:

  • В нашем случае переменная цикла i выступает контейнером для элементов списка. При первом «проходе» цикла в нее автоматически записываются огурцы, при втором — помидоры и т.д.
  • Вместо i можно взять любое другое слово или букву, часто берут i как сокращенное от английского слова item.

Теперь попробуем вывести содержимое словаря. Здесь код чуть сложнее.

Для начала все так же воспользуемся словарем из предыдущего занятия.

Теперь попробуем вывести сразу и название продуктов и их количество. Для этого снова напишем for, а затем k, v in shopping_dict.items():. Что мы сделали? Мы ввели две переменные k и v, в которые в цикле будем поочередно записывать ключи (k) и значения (v). Действием в цикле будет опять же вывод этих переменных.

Результат:

Примечания:

  • k и v обычно используются как сокращение от key и value, однако как и в случае с переменной i название переменных может быть любым
  • метод .items() как раз и сообщает компьютеру, что мы хотим записать в переменные k и v ключ и значение словаря shopping_dict

Схема синтаксиса:

цикл for в Питоне со списками и словарями

Вопросы для закрепления

Какие два ключевых слова мы использовали на этом занятии, чтобы задать условие?

Ответ: if и else

Какое ключевое слово используется для просмотра всех элементов списка или словаря?

Ответ: оператор for

Теперь попробуйте сделать упражнения

Подведем итог

Сегодня мы освоили два важнейших элемента любого языка программирования: условия и циклы. С помощью условной конструкции, мы создали первую работающую программу (алгоритм выдачи кредита), а с помощью цикла мы научились поочередно просматривать элементы списка и словаря.

На этом предварительное знакомство с Питоном пока можно завершить, и на следующем занятии мы познакомимся с тем, как можно использовать Питон для анализа данных и построения графиков.