Python Glossary English

все Python 3Встроенные функциипонятие

globals

пространства имён

Возвращает словарь глобального пространства имён текущего модуля.

Синтаксис

globals()

Это не копия, а живой словарь модуля: присваивание в него действительно создаёт глобальную переменную — в отличие от locals() внутри функции, где правки в общем случае никуда не доедут. Отсюда соблазн лепить имена переменных на лету, но почти всегда вместо этого нужен обычный словарь: сгенерированные имена не видит ни читатель, ни линтер. Внутри функции globals() отдаёт пространство имён модуля, где функция определена, а не того, кто её вызвал.

Примеры

x = 42
print('x' in globals())  # → True
print(globals()['x'])  # → 42
globals()['new_var'] = 99
print(new_var)  # → 99
print(type(globals()))  # → dict
print('print' in dir(__builtins__))  # → True

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности