#12 – Створення функцій (def, lambda)
Відеоурок
Функції можна назвати невеликими підпрограмами, куди можна винести код, що повторюється, і звертатися до нього, коли це буде потрібно. Функції значно полегшують побудову програм, оскільки нам не треба копіювати однотипний код багато разів, а можна просто скористатися однією загальною функцією.
Багато хто плутає функції та методи і не розуміє відмінностей між ними. Насправді відмінностей немає, тому що методи та функції є одним і тим же. Функції записані поза класами називають функціями, а функції записані всередині класів називаються методами.
Така сама ситуація зі змінним. У класах змінні називаються полями, а поза класами – змінними.
У Python функції створюються за допомогою ключового слова def. Кожна функція може мати будь-які параметри або не мати їх зовсім. Функції здатні щось повертати в ході виконання коду, якщо це потрібно.
def some_test(): # Функція без параметрів
x = 23
return x # Функція повертає щось
def some_test_2(a, b, c): # Функція з 3 параметрами
return a * b * c # Функція повертає результат множення чисел
def print_something(word, prefix): # Функція з двома параметрами
print (prefix, "-", word)
pass # Функція нічого не повертаєКоли функція нічого не повертає та нічого не робить, то необхідно прописувати ключове слово pass.
Функції можуть повертати інші функції. Щоб звернутися до функції необхідно прописати її назви та передати параметри, якщо такі є:
res = some_test_2 (2, 67, 12)У прикладі вище результат виконання функції буде поміщений у змінну res. Далі зі змінною можна працювати як із звичайним значенням у програмі.
Анонімні функції
Якщо функція не повинна виконувати великий обсяг коду, можна скористатися анонімною функцією. Для цього буде потрібна функція lambda.
Приклад створення lambda функції:
multiple = lambda a, b: a * b
multiple(7, 12)Подібна функція не має назви, але її можна присвоїти до змінної, яку надалі необхідно викликати як звичайну функцію.
Вихідний код
Весь код буде доступний після підписки на проект! Завдання до уроку
Необхідно оформити передплату на проект, щоб отримати доступ до всіх домашніх завдань
Велике завдання за курсом
Вам необхідно оформити передплату на сайті, щоб мати доступ до всіх великих завдань. У завдання входить методика рішення, а також готовий проект з відповіддю до завдання.
PS: подібні завдання доступні при підписці від 1 місяця
Також варто подивитися