Вкладені функції
Свайпніть щоб показати меню
Коли потрібно організувати код для кращої читабельності, інкапсуляції або повторного використання, можна визначити функцію всередині іншої функції. Такі функції називаються вкладеними функціями. У Python вкладену функцію створюють шляхом запису визначення однієї функції всередині тіла іншої. Це дозволяє приховати допоміжну логіку, яка не повинна бути доступною ззовні, або створювати спеціалізовані функції на льоту.
Синтаксис вкладеної функції простий: достатньо розмістити оператор def у тілі іншої def. Внутрішня функція має доступ до змінних зовнішньої функції, що корисно для створення індивідуальних поведінок або допоміжних обчислень, які залежать від аргументів зовнішньої функції.
Практичне застосування вкладених функцій — повернення функції, яка налаштовується параметрами зовнішньої функції. Це часто використовується у функціональному програмуванні для створення спеціалізованих функцій або інкапсуляції логіки, яка не повинна потрапляти у глобальний простір імен.
1234567891011def make_multiplier(factor): # 'multiplier' function is nested inside 'make_multiplier' def multiplier(x): return x * factor return multiplier double = make_multiplier(2) triple = make_multiplier(3) print(double(5)) print(triple(4))
1. Чому може виникнути потреба визначити функцію всередині іншої функції?
2. Яка область видимості змінної, визначеної у зовнішній функції?
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат