Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Python: closures, functions

Что такое замыкания в контексте Python?

Этот вопрос проверяет знание концепции замыканий — одной из ключевых особенностей функций в Python.

Короткий ответ

Замыкание — это функция, которая "запоминает" переменные из своей внешней области видимости, даже если эта область больше недоступна. Это позволяет функции использовать контекст, в котором она была создана.

Длинный ответ

Замыкание возникает, когда:

  • Внутри функции определена другая функция.

  • Вложенная функция использует переменные из внешней функции.

  • Внешняя функция возвращает вложенную функцию.

Пример:

def make_multiplier(factor):
    	def multiplier(x):
        	return x * factor  # factor сохраняется в замыкании
    	return multiplier

double = make_multiplier(2)
print(double(5))  # 10

Как это работает:

  • Переменная factor сохраняется в замыкании, даже после завершения работы make_multiplier.

  • Замыкания полезны для создания функций с сохранением состояния.

Когда использовать:

  • При создании функций с состоянием (например, счетчики, конфигурации).

  • В функциях высшего порядка.

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    4

  • Сложность:

    6

Навыки

  • Python

    Python

Ключевые слова

#closures

#functions

Подпишись на Python Developer в телеграм

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.