[PYTHON] 3 façons d'accéder à l'espace de noms __main__

Lorsqu'ils sont exécutés dans un script, les «x», «y» et «z» ci-dessous pointent tous vers le même objet «dict».

test_globals.py


import sys

x = globals()

y = sys.modules["__main__"].__dict__

def foo():
    print("foo.")

z = foo.__globals__

Pour vérifier, exécutez python -i test_globals.py et exécutez ce qui suit dans l'interpréteur.

python


>>> x is y is z
True
>>> [id(w) for w in (x, y, z)]
[10317376, 10317376, 10317376]

Recommended Posts

3 façons d'accéder à l'espace de noms __main__
Comment accéder à la banque de données de l'extérieur
3 meilleures façons d'utiliser la commande less
Comment accéder à la variable globale du module importé
La route vers Pythonista
La route vers Djangoist
Accès aux champs du dictionnaire
Différentes façons de calculer la similitude entre les données avec python
J'ai essayé de sortir le journal d'accès au serveur en utilisant Node.js