Щоразу, перед тим як створювати малюнок, ми визначаємо, що саме треба намалювати, з яких елементів цей малюнок складається і складаємо алгоритм побудови. Далі приступаємо до реалізації: малюємо кожен елемент по порядку.
Приклад. Для малювання зображення, наведеного на рисунку, перед основним програмним кодом створюються чотири функції
з іменами draw_wall, draw_roof, draw_tree, draw_sun для розв'язування підзадач основної задачі.
В основній програмі ці функції викликаються послідовно за їхніми іменами.
Якщо ми захочемо намалювати ще одне дерево біля будинку, то повторно викличемо функцію draw_tree з іншими координатами початку малювання.
Код програми для копіювання
Ви вже ознайомились зі стандартними функціями різного призначення:
повертає випадкове
число
виводить список значень у вікно консолі
пересуває Черепашку
малює коло
Ці функції вбудовані, тобто описані в модулях і бібліотеках мови Python.
Крім вбудованих функцій, Python дає можливість створювати й використовувати власні функції, так звані функції користувача.
Розглянуті раніше функції draw_roof, draw_tree, draw_sun є функціями користувача.
Опис функції:
Тіло функції являє собою послідовність операторів, які будуть виконані після викликання функції.
Блок функції починається з ключового слова def, після якого пишуть назву функції й круглі дужки ().
Усередині дужок пишуть параметри — імена змінних, які отримують значення під час виклику функції. Ці параметри ще називають формальними. Якщо функції не треба передавати значення, необхідно записати порожні дужки.
Після дужок ставиться двокрапка і з нового рядка з відступом записуються оператори тіла функції.
Після того як функцію створено, її можна викликати з іншої функції або безпосередньо з оболонки Python.
1) ввести ім’я функції й додати дужки;
2) у дужках перелічити аргументи функції — значення, які треба присвоїти формальним параметрам.
Якщо формальних параметрів немає, то при виклику після імені функції потрібно писати порожні дужки.
Під час виклику відбувається виконання команд тіла функції.
Якщо виклик функції записано раніше, ніж її опис, то виникає помилка NameError.
Приклад створення і виклику функції, яка підносить число до квадрату.