Maison > développement back-end > Tutoriel Python > Comment puis-je partager des variables globales entre des fichiers Python sans utiliser « pickle » ou « io » ?

Comment puis-je partager des variables globales entre des fichiers Python sans utiliser « pickle » ou « io » ?

Barbara Streisand
Libérer: 2024-12-25 19:03:10
original
158 Les gens l'ont consulté

How Can I Share Global Variables Between Python Files Without Using `pickle` or `io`?

Utilisation de variables globales entre fichiers sans pickle ni écriture io

Les variables globales fournissent un mécanisme pratique pour partager des données entre plusieurs parties d'un programme. Cependant, accéder aux variables globales définies dans un fichier à partir d'un autre fichier peut être difficile.

Considérez le scénario suivant : Vous avez un projet avec plusieurs fichiers et vous souhaitez définir des variables globales accessibles à tous. .

Méthode 1 : accès indirect

La difficulté liée à l'utilisation de variables globales dans les fichiers réside dans l'isolation des modules. Les modules en Python sont exécutés indépendamment, donc définir une variable globale dans un module ne la rend pas automatiquement disponible pour les autres modules.

Pour résoudre ce problème, envisagez de définir les variables globales dans un fichier séparé, tel que settings.py . Ce fichier sera chargé d'initialiser et de fournir l'accès aux variables globales.

# settings.py
def init():
    global myList
    myList = []

# main.py
import settings
settings.init()  # Initialize the global variables
import subfile  # Import the subfile that needs access to the globals

# subfile.py
import settings
def stuff():
    settings.myList.append("hey")  # Access the global variable
Copier après la connexion

Méthode 2 : accès direct

Une autre méthode consiste à utiliser un attribut de module pour déclarer les variables globales. Cela expose essentiellement les variables en tant qu'attributs du module.

# settings.py
myList = []

# main.py
import settings
import subfile

# subfile.py
import settings
def stuff():
    settings.myList.append("hey")
Copier après la connexion

Les deux méthodes vous permettent d'accéder à des variables globales sur plusieurs fichiers, garantissant ainsi la cohérence des données dans tout votre programme.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal