Замыкание — это внутренняя функция, которая запоминает переменные из охватывающей области даже после завершения внешней функции.
Декораторы обычно реализуются с помощью замыканий: оболочка сохраняет ссылку на исходную функцию и любые дополнительные параметры.
Суммируя:
- Замыкание — это функция плюс захваченный контекст.
- Декоратор часто представляет собой практическое использование замыкания.
- Он позволяет добавлять поведение без изменения тела функции.
Итог
Замыкание — это внутренняя функция, которая запоминает переменные из охватывающей области даже после завершения внешней функции.