Дрон Кодер — программирование для детей и взрослых в игровой форме. Начать бесплатно

Что такое область имён (namespace)

Область имён — это «пространство», где живут имена переменных и функций. Благодаря ему одинаковые имена не мешают друг другу.

Зачем нужны пространства имён

В программе много имён, и они легко бы конфликтовали. Область имён разделяет их по «комнатам»: имя внутри функции живёт в своей комнате, имя в модуле — в своей. Поэтому переменная x в одной функции не мешает x в другой.

Разные уровни

Есть локальная область (внутри функции), глобальная (внутри модуля-файла) и встроенная (сами функции Python вроде print). Python ищет имя от ближней области к дальней: сначала локальную, потом глобальную, потом встроенную.

Связь с модулями

Каждый модуль — своё пространство имён. Поэтому math.pi и your_module.pi не конфликтуют: имя pi живёт внутри своего модуля. Обращение через точку (модуль.имя) — как раз указание нужной «комнаты».

Частые вопросы

Почему одинаковые имена не конфликтуют? Они в разных областях имён — «комнатах».

Как Python выбирает нужное имя? Ищет от локальной области к глобальной и встроенной.

Начать игру бесплатно
Попробуй прямо здесь
Уровень 1

Задание