English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial básico do Python

Controle de fluxo do Python

Funções do Python

Tipos de Dados do Python

Operações de arquivo do Python

Objetos e classes do Python

Data e hora do Python

Conhecimento avançado do Python

Manual de referência do Python

Uso e exemplo do globals() no Python

Funções integradas do Python

O método globals() retorna um dicionário de todas as variáveis globais na posição atual.

A tabela de símbolos é uma estrutura de dados mantida pelo compilador que contém todas as informações necessárias do programa.

Essas incluem nomes de variáveis, métodos, classes, etc.

Existem duas principais tabelas de símbolos.

  1. Tabela de símbolos local

  2. Tabela de símbolos global

Local(Local)A tabela de símbolos armazena todas as informações relacionadas ao escopo local do programa e pode ser usada no Pythonlocals()acesso de método.

o escopo local pode estar dentro de uma função, dentro de uma classe, etc.

Da mesma forma,Global(Global)O símbolo da tabela armazena todas as informações relacionadas ao escopo global do programa e pode ser acessado usando o método globals() no Python.

O escopo global contém todas as funções, variáveis que não estão associadas a nenhum classe ou função.

Leia mais: Espaço de nomes e escopo no Python

Sintaxe do globals()

O dicionário globals() é o dicionário do módulo atual (dentro de uma função, é o módulo que o definiu, não o que o chamou).

A sintaxe do método globals() é:

globals()

Parâmetros do globals()

O método globals() não leva nenhum parâmetro.

Retorno do globals()

O método globals() retorna um dicionário de variáveis globais.

Exemplo1:O método globals() no Python como funciona?

globals()

Quando você executar o programa, a saída será:

{'In': ['', 'globals()'],
 'Out': {},
 '_': '',
 '__': '',
 '___': '',
 '__builtin__': <module 'builtins' (built-in)>,
 '__builtins__': <module 'builtins' (built-in)>,
 '__name__': '__main__',
 '_dh': ['',/home/repl'],
 '_i': '',
 '_i1': 'globals()',
 '_ih': ['', 'globals()'],
 '_ii': '',
 '_iii': '',
 '_oh': {},
 '_sh': <module 'IPython.core.shadows' from '/usr/local/lib/python3.5/dist-packages/IPython/core/shadows.py'>,
 'exit': <IPython.core.autocall.ExitAutocall at 0x7fbc60ca6c50>,
 'get_ipython': <bound method InteractiveShell.get_ipython of <IPython.core.interactiveshell.InteractiveShell object at 0x7fbc6478ee48>>,
 'quit': <IPython.core.autocall.ExitAutocall at 0x7fbc60ca6c50>}

A saída exibirá todos os variáveis globais e outros símbolos do programa atual.

Exemplo2: Modificar variável global usando global()

age = 23
globals()['age'] = 25
print('Idade é:', age)

Quando você executar o programa, a saída será:

Idade é: 25

Aqui, devido à tabela de símbolos global ainda armazenar todos os variáveis globais, ou seja, neste exemplo age, você pode usar a função globals() para alterar o valor de age.

Acesse o dicionário retornado usando a chave da variável age e modifique-o para25.

Isso novamente refletirá na tabela de símbolos globais.

Funções integradas do Python