Fonction globals() de Python

Python3 内置函数Fonctions intégrées de Python3


globals()C'est une fonction intégrée de Python utilisée pour renvoyer le dictionnaire des variables dans la portée globale actuelle.

globals()Renvoie un dictionnaire contenant toutes les variables globales du module actuel. Ce dictionnaire contient tous les modules importés, les fonctions définies, les classes et les variables globales.

Définition du mot: globals 意为"全局的",表示全局作用域中的变量。


Syntaxe de base et paramètres

Format de syntaxe

globals()

Description du paramètre

  • Aucun paramètre

Description de la fonction

  • Valeur de retour: Renvoie un dictionnaire contenant les variables de la portée globale.

Exemple

Exemple 1 : Afficher les variables globales

Exemple

# Définir quelques variables globales
global_var = 100
global_list = [1, 2, 3]

import math
import os

# Obtenir le dictionnaire des variables globales
g = globals()
print(f"Nombre de variables : {len(g)}")

# Afficher une variable spécifique
print(f"global_var: {g.get('global_var')}")
print(f"math: {g.get('math')}")
print(f"os: {g.get('os')}")

# Vérifier si la variable existe
print('global_var' in g)  # Sortie : True
print('unknown' in g)     # Sortie : False

Sortie attendue :

变量数量: ...
global_var: 100
math: <module 'math'>
os: <module 'os'>
True
False

Analyse du code :

  1. globals() renvoie toutes les variables globales du module actuel.
  2. Inclut les modules importés, les fonctions, les classes, etc.

Exemple 2 : Manipuler dynamiquement les variables globales

Exemple

# Créer dynamiquement des variables globales
globals()['dynamic_var'] = "Hello"
print(dynamic_var)  # Sortie : Hello

# Créer des variables par lot
for i in range(3):
    globals()[f'var_{i}'] = i * 10

print(var_0, var_1, var_2)  # Sortie : 0 10 20

# Utiliser globals() dans une fonction
def test():
    g = globals()
    g['x'] = 999
    print(f"Dans la fonction : x = {x}")

test()
print(f"En dehors de la fonction : x = {x}")  # Sortie : x = 999

Sortie attendue :

Hello
0 10 20
在函数中: x = 999
在函数外: x = 999

Vous pouvez modifier dynamiquement les variables globales, mais ce n'est généralement pas recommandé.

globals()Principalement utilisé pour le débogage et la programmation dynamique.


Python3 内置函数Fonctions intégrées de Python3


Autres extensions