Теория:

Зачем нужны функции в программировании?
  
Те, кто начал писать первые короткие программы, могут спросить: зачем нам нужны функции, ведь можно написать код и без них. Можно, если программа решает одну задачу и состоит из \(10\)–\(15\) строк. В чём же достоинства функции?
  
1. Компактность программного кода.
 
Нам уже знакомы такие функции, как \(max()\) и \(min()\). Конечно, это функции, встроенные в Python, но представь себе, что их нет и тебе нужно было написать программу, которая из ряда чисел находила минимальное значение.
 
\(1\) вариант
  
р1.jpg
Рис. \(1\). Примерная программа нахождения минимального значения
 
\(2\) вариант
  
р2.jpg
Рис. \(2\). Программа с использованием функции \(min\)
 
2. Повторное использование.
  
После создания функции её можно вызывать много раз, а не записывать в основную программу многократно. Не нужно запоминать имена переменных в функции, а только их количество, что важно для ускорения работы программы.
Пример:
составь функцию, которая выводит \(1\), если первое число больше второго, выводит \(0\), если оба числа равны, иначе выводит \(-1\).
Такая проверка проводится неоднократно в ходе программы и при разных именах переменных.
 
p3.jpg
Рис. \(3\). Примерная программа
 
p4.jpg
Рис. \(4\). Результат работы программы
 
3. Облегчение тестирования программного кода.
 
Работающую функцию можно протестировать один раз, и если к ней обращаются в программе несколько раз, то проверку проводить не надо снова, как в случае копирования кода.
 
4. Модернизация программы.
  
Если мы хотим изменить что-то в программном коде, то можно это сделать в одном месте (в функции), а не искать строки с нужным кодом.
Источники:
Рис. 1. Примерная программа нахождения минимального значения. © ЯКласс.
Рис. 2. Программа с использованием функции min. © ЯКласс.
Рис. 3. Примерная программа. © ЯКласс.
Рис. 4. Результат работы программы. © ЯКласс.