Globales Python ()

Une table de symboles est une structure de données maintenue par un compilateur qui contient toutes les informations nécessaires sur le programme.

Ceux-ci incluent les noms de variables, les méthodes, les classes, etc.

Il existe principalement deux types de table de symboles.

  1. Table des symboles locaux
  2. Tableau des symboles globaux

Localsymbol table stocke toutes les informations relatives à la portée locale du programme et est accessible en Python à l’aide de la méthode locals ().

La portée locale peut être dans une fonction, dans une classe, etc.

De même, unGlobalsymbol table stocke toutes les informations relatives à la portée globale du programme et est accessible en Python à l’aide de globals() méthode.

La portée globale contient toutes les fonctions, variables qui ne sont associées à aucune classe ou fonction.

Lecture recommandée:Espace de noms et portée de en Python


Syntaxe des globals ()

Le dictionnaire de table globals est le dictionnaire du module courant (à l’intérieur d’une fonction, c’est un module où il est défini, pas le module où il est appelé).

La syntaxe de globals() la méthode est:

globaux ()

Paramètres globals ()

 globals() La méthode ne prend aucun paramètre.


Valeur renvoyée par globals ()

 globals() renvoie le dictionnaire de la table de symboles globale actuelle.


Exemple 1: Comment fonctionne la méthode globals () en Python?

 globals() 

Production

{'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.shadowns' from '/usr/local/lib/python3.5/dist-packages/IPython/core/shadowns.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>}

La sortie affiche toutes les variables globales et autres symboles pour le programme en cours.


Exemple 2: modifier une variable globale à l’aide de global ()

 age = 23

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

Production

L'âge est: 25 ans

Ici, puisque la table de symboles globale stocke également toutes les variables globales, c’est-à-dire dans ce cas,âge, la valeur deâgepeut être modifié en utilisant globals()