Python Language
Кодовые блоки, кадры выполнения и пространства имен
Поиск…
Вступление
Блок кода представляет собой часть текста программы Python, которая может быть выполнена как единое целое, например модуль, определение класса или тело функции. Некоторые блоки кода (например, модули) обычно выполняются только один раз, другие (например, тела функций) могут выполняться много раз. Блоки кода могут содержать текстовые блоки других кодов. Блоки кода могут вызывать другие блоки кода (которые могут или не могут содержаться в них в тексте) как часть их выполнения, например, путем вызова (вызова) функции.
Пространства имен блоков кода
Тип блока кода | Глобальное пространство имен | Местное пространство имен |
---|---|---|
модуль | ns для модуля | как и глобальные |
Сценарий (файл или команда) | ns для __main__ | как и глобальные |
Интерактивная команда | ns для __main__ | как и глобальные |
Определение класса | глобальные ns содержащего блока | новое пространство имен |
Тело функции | глобальные ns содержащего блока | новое пространство имен |
Строка передана в оператор exec | глобальные ns содержащего блока | локальное пространство имен содержащего блока |
Строка передана eval() | глобальный номер вызывающего абонента | локальный номер вызывающего абонента |
Файл, прочитанный execfile() | глобальный номер вызывающего абонента | локальный номер вызывающего абонента |
Выражение, прочитанное input() | глобальный номер вызывающего абонента | локальный номер вызывающего абонента |
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow