Когда кода становится всё больше, разбираться с ним становится сложнее. Стоит подумать о том, как сделать его более наглядным, понятным и менее загруженным что ли. Короче... функции.
В этой статье постараюсь описать лишь краткое знакомство с функциями, дабы никого не перегрузить информацией.
И так, если у вас есть блок кода, который выполняет определённую задачу и который можно использовать не один раз, то этот блок точно надо вынести в функцию.
В принципе мы уже знакомы с функциями, например, print() – это функция, int() – тоже функция. Но эти функции уже "встроены" в Python, а наша задача – научиться создавать свои.
Начинается создание функции с её объявления ключевым словом def. Следом указывается имя функции, которое мы придумываем сами. Затем в круглых скобках указываем параметры функции (их может и не быть, вспомните print(), который выводит пустую строку). Заканчивается строчка двоеточием. Ну а со следующей строки, с обязательным отступом в 4 пробела, пишем тело функции, т.е. то, что она должна делать.
Разберём на примере.
Разберём на части:
- def – ключевое слово объявления функции
- rain – имя функции (придумал сам)
- () – место для параметров (при наличии)
- : – не забываем про двоеточие
- print('Идёт дождь!') – тело функции
Функция написана, но если вы сейчас запустите программу, то ничего не произойдёт. Дело в том что теперь необходимо вызвать функцию или обратиться к ней. Тут всё просто, достаточно написать её имя, ну и про скобки не забыть.
В результате получим строчку:
Теперь немного усложним, добавим аргумент.
В объявлении функции добавился параметр which, он будет принимать то значение, которое мы передадим ему при вызове. Его я и использовал в строке вывода, чтобы указать какой именно дождь.
Результат выглядит так:
Надеюсь пока всё понятно. Поэтому ещё немного усложним, добавим условий.
Напишем функцию, которая будет давать нам совет исходя из состояния пробок на дорогах. Для этого приготовим некую шкалу и набор сообщений:
- 0-3 балла – "Дороги свободны, можно ехать"
- 4-7 баллов – "Ехать можно, но местами придётся постоять"
- 8-10 баллов – "Кино и тёплый чай, ну или можно покодить. Никаких поездок"
Отлично, теперь напишем функцию traffic.
Для первого знакомства с функциями достаточно. Если есть вопросы, пишите в комментариях, будем разбираться вместе!