Python-globaler ()

Metoden Globals () returnerar ordlistan för den aktuella globala symboltabellen.

En symboltabell är en datastruktur som underhålls av en kompilator som innehåller all nödvändig information om programmet.

Dessa inkluderar variabla namn, metoder, klasser etc.

Det finns huvudsakligen två typer av symbolbord.

  1. Lokal symboltabell
  2. Globalt symbolbord

Lokal symboltabell lagrar all information som är relaterad till programmets lokala omfång och nås i Python med lokalbefolkningen () -metoden.

Det lokala omfånget kan ligga inom en funktion, inom en klass, etc.

På samma sätt lagrar en global symboltabell all information relaterad till programmets globala omfång och nås i Python med globals()metoden.

Det globala omfånget innehåller alla funktioner, variabler som inte är associerade med någon klass eller funktion.

Rekommenderad läsning: Namnområde och omfattning i Python

Syntax för globala ()

Globaltabellordboken är ordlistan för den aktuella modulen (inuti en funktion är detta en modul där den är definierad, inte modulen där den heter).

Syntaxen för globals()metoden är:

 globala ()

globals () Parametrar

globals() metoden tar inga parametrar.

Returvärde från globala ()

globals() metoden returnerar ordlistan för den aktuella globala symboltabellen.

Exempel 1: Hur globals () -metoden fungerar i Python?

 globals()

Produktion

 ('In': ('', 'globals ()'), 'Out': (), '_': '', '__': '', '___': '', '__builtin__':, ' __builtins__ ':,' __name__ ':' __main__ ',' _dh ': (' / home / repl '),' _i ':' ',' _i1 ':' globals () ',' _ih ': (' ', 'globals ()'), '_ii': '', '_iii': '', '_oh': (), '_sh':, 'exit':, 'get_ipython':  , 'sluta med': ) 

Utgången visar alla globala variabler och andra symboler för det aktuella programmet.

Exempel 2: Ändra global variabel med global ()

 age = 23 globals()('age') = 25 print('The age is:', age)

Produktion

 Åldern är: 25 

Här, eftersom den globala symboltabellen också lagrar alla globala variabler, dvs. i detta fall ålder, kan åldersvärdet ändras med hjälp av globals()funktionen.

Ordboken som returneras nås med hjälp av nyckeln till variabelåldern och ändras till 25.

Detta återspeglas i den globala symboltabellen igen.

Intressanta artiklar...