Встроенная функция Python globals()

Из документации Python 3

Возвращает словарь, реализующий текущее пространство имен модуля. Для кода внутри функций оно устанавливается при определении функции и остается неизменным независимо от того, где вызывается функция.

Введение

Функция globals() в Python возвращает словарь, представляющий текущую глобальную таблицу символов. Она включает все глобальные переменные, функции и другие объекты в текущей области видимости.

Она может быть полезна для инспектирования глобального пространства имен или для динамического доступа к глобальным переменным по их строковым именам.

Примеры

# Определяем глобальную переменную
global_var = "I am global"

def my_function():
    # Доступ к глобальным переменным с помощью globals()
    global_dict = globals()
    print(global_dict["global_var"])

    # Изменяем глобальную переменную
    global_dict["global_var"] = "Modified global"

my_function()
print(global_var)
I am global
Modified global

Вы также можете использовать globals() для создания новых глобальных переменных изнутри функции:

def create_global():
    globals()["new_global"] = "This was created dynamically"

create_global()
print(new_global)
This was created dynamically

Связанные ссылки