Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Замикання | Область видимості змінних
Середній Рівень Python: Аргументи, Генератори та Декоратори
course content

Зміст курсу

Середній Рівень Python: Аргументи, Генератори та Декоратори

Середній Рівень Python: Аргументи, Генератори та Декоратори

1. Пакування та Розпакування
2. Аргументи Функції
3. Функція як Аргумент
4. Область видимості змінних
5. Декоратори

bookЗамикання

Замикання у Python відбувається, коли внутрішня функція обернута зовнішньою функцією, посилаючись на значення із зовнішньої області видимості. Вони корисні для обходу глобальних змінних.

Замикання корисні, коли вам потрібно використати декілька методів, але їх недостатньо для створення цілого класу. Вони допомагають зробити речі простими. Але, якщо вам потрібно керувати великою кількістю методів та атрибутів, краще використовувати клас.

Давайте розглянемо кілька прикладів, щоб краще це зрозуміти.

12345678910111213
def calculate_income(percent): def annual_income(amount): return amount * percent / 100 return annual_income # function returned by outer function interest_rate_3 = calculate_income(3) # function assigned to the variable interest_rate_7 = calculate_income(7) print(interest_rate_3(1500)) print(interest_rate_3(2000)) print(interest_rate_7(1500)) print(interest_rate_7(2000))
copy

Ця функція обчислює річний дохід для грошового депозиту. Замикання дозволяє нам зберігати функцію у змінній з певним відсотковим значенням, що дає змогу використовувати її багаторазово.

Таким чином, замикання дозволяють створювати і повертати функції, які "запам'ятовують" значення з області видимості, що їх охоплює, і це особливо корисно для створення спеціалізованих функцій з наперед визначеною поведінкою на основі певних параметрів.

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 4. Розділ 6
some-alt