Função built-in globals() do Python

Da documentação do Python 3

Retorna o dicionário que implementa o namespace do módulo atual. Para código dentro de funções, isso é definido quando a função é definida e permanece o mesmo, independentemente de onde a função é chamada.

Introdução

A função globals() em Python retorna um dicionário que representa a tabela de símbolos global atual. Isso inclui todas as variáveis globais, funções e outros objetos no escopo atual.

Pode ser útil para inspecionar o namespace global ou para acessar dinamicamente variáveis globais por seus nomes em string.

Exemplos

# Define uma variável global
global_var = "Eu sou global"

def my_function():
    # Acessa variáveis globais usando globals()
    global_dict = globals()
    print(global_dict["global_var"])

    # Modifica uma variável global
    global_dict["global_var"] = "Global modificado"

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

Você também pode usar globals() para criar novas variáveis globais a partir de dentro de uma função:

def create_global():
    globals()["new_global"] = "Isso foi criado dinamicamente"

create_global()
print(new_global)
This was created dynamically