Python

Comprendre la portée des variables globales en python

Comprendre la portée des variables globales en python
Deux types de variables peuvent être définis dans la plupart des langages de programmation. Ce sont des variables globales et des variables locales. Les variables qui sont définies en dehors de la fonction sont appelées une variable globale. Cette variable est accessible et modifiable de n'importe où dans le script. La variable qui est déclarée à l'intérieur de la fonction est appelée la variable locale. Mais si le même nom de variable existe en tant que variables globales et locales, la variable à l'intérieur de la fonction aura la priorité et la valeur de la variable globale sera ignorée. La portée de la variable globale dans le script python est montrée dans ce tutoriel à l'aide de divers exemples.

Exemple-1 : Utilisation simple d'une variable globale

L'exemple suivant montre l'utilisation simple d'une variable globale à l'intérieur de la fonction et à l'extérieur de la fonction. Ici, une variable globale nommée texte est utilisé pour affecter une chaîne de données. Une fonction personnalisée nommée printMessage() est défini pour imprimer la valeur de la variable globale. La valeur de la texte la variable est imprimée à l'intérieur de la fonction et à l'extérieur de la fonction après avoir changé la valeur.

#!/usr/bin/env python3
# Définir une variable globale
text = "Bienvenue sur LinuxHint"
# Définir une fonction
def printMessage() :
# Affiche la variable globale de la fonction
print("Variable globale à l'intérieur de la fonction : \n", texte)
# Appeler la fonction
printMessage()
# Changer la valeur de la variable globale
text = "Apprendre la programmation Python"
# Affiche la valeur actuelle de la variable globale
print("Variable globale en dehors de la fonction : \n", texte)

Production:

La sortie suivante apparaîtra après l'exécution du script. Il a imprimé la valeur, 'Bienvenue sur LinuxHint' qui est affecté à la variable avant d'appeler la fonction. Ensuite, il a imprimé la valeur, « Apprendre la programmation Python »  après avoir changé la valeur de la variable.

Exemple-2 : Utilisation de variables globales et locales portant le même nom

Si vous souhaitez déclarer un nom de variable dans une fonction déjà déclarée en tant que variable globale auparavant en python et souhaitez utiliser la variable, la variable sera traitée comme une variable locale et générera une erreur. Le script suivant affichera l'erreur. Ici, le texte la variable est définie comme une variable globale et locale.

#!/usr/bin/env python3
# Définir une variable globale
text = "J'aime Python"
# Définir une fonction
def printMessage() :
imprimer (texte)
text = "J'aime PHP"
# Appeler la fonction
printMessage()

Production:

La sortie suivante apparaîtra après l'exécution du script.

Pour éviter la situation ci-dessus et si vous souhaitez déclarer une variable locale avec le même nom qu'une variable globale, vous devez d'abord affecter la variable locale à l'intérieur de la fonction. Le script suivant montre que les modifications de la variable locale n'apportent aucune modification à la variable globale. texte la variable est imprimée à l'intérieur et à l'extérieur de la fonction ici.

#!/usr/bin/env python3
# Définir une variable globale
text = "J'aime Python"
# Définir une fonction
def printMessage() :
# Détermination de la valeur locale
text = "J'aime PHP"
# Affiche la variable locale,texte
print("La valeur de 'text' à l'intérieur de la fonction : \n", text)
# Appeler la fonction
printMessage()
# Affiche la variable globale, texte
print("La valeur de 'text' en dehors de la fonction : \n", text)

Production:

La sortie suivante apparaîtra après l'exécution du script.

Exemple-3 : Utilisation d'une variable globale à l'intérieur de la fonction

L'exemple précédent montre que la variable globale n'est pas accessible à l'intérieur d'une fonction. Vous pouvez utiliser le Global mot-clé pour accéder à une variable globale à partir de n'importe quelle fonction. Dans le script suivant, pourcentage_cal() la fonction est définie pour calculer le pourcentage de n'importe quel nombre où les variables globales et locales sont utilisées. Ici, nombre est une variable globale, et perVal est une variable locale. global le mot-clé est utilisé ici pour identifier la variable globale à l'intérieur de la fonction et la valeur de la variable globale est modifiée à l'intérieur de la fonction.

#!/usr/bin/env python3
# Prendre une valeur entière
num = int(input("Entrez un nombre : "))
# Définir la fonction
def cal_percentage() :
# Reconnaître la variable globale en utilisant le mot clé global
nombre global
# Prendre une valeur entière en pourcentage
perVal = int(input("Entrez la valeur en pourcentage : "))
# Calculer la valeur en pourcentage
result = float((num * perVal)/100)
# Imprimer le résultat formaté
print("%d pourcentage de %d = %f" %(perVal, num, result))
# Changer la valeur de la variable globale
nombre = 500
# Affiche la valeur de la variable globale avant d'appeler la fonction
print("\nLa valeur de num = %d" %num)
# Appeler la fonction
pourcentage_cal()
# Affiche la valeur de la variable globale après l'appel de la fonction
print("\nLa valeur de num = %d" %num)

Production:

La sortie suivante apparaîtra après l'exécution du script. Ici, 10% de 350 est calculé et imprimé.

Exemple-4 : Utilisation de variables globales d'un autre script

L'exemple suivant montre comment la variable globale déclarée dans un script peut être utilisée dans un autre script. Supposons que le nom de fichier soit global6.py qui utilisera les variables globales définies dans le fichier nommé global5.py. Trois variables globales sont déclarées dans global5.py. Vous devez importer global5 utiliser les variables dans un autre script. Le scénario de global6.py calculera le salaire de trois types d'employés en fonction des valeurs d'entrée et des variables globales.

#!/usr/bin/env python3
# c'est global5.fichier py
# Structure salariale de base d'une entreprise
De base = 5000
Médical = 500
Transports = 500 #!/usr/bin/env python3
# c'est global6.fichier py
# Importez les variables globales de global5.py
importer global5
# Prendre le nom de l'employé
name = input("Entrez le nom de l'employé : ")
# Prendre le nom du poste
post = input("Saisissez le message : ")
# Initialiser la variable d'erreur
erreur = Faux
# Vérifiez le poste et fixez le salaire de base en fonction du poste
si (poster.supérieur() == "PDG") :
basique = global5.Basique + (global5.De base*0.4)
elif(poster.upper() == "GESTIONNAIRE") :
basique = global5.Basique + (global5.De base*0.25)
elif(poster.upper() == "COMPTABLE") :
basique = global5.Basique + (global5.De base*0.15)
autre:
# Définir l'erreur sur true si la valeur de publication n'est pas trouvée
erreur = vrai
# Imprimer le salaire si l'erreur est flase
si (erreur == Faux) :
salaire = de base + global5.Médical + global5.Transport
print("Le salaire de %s est %d" %(nom, salaire))
autre:
print("Le message n'est pas trouvé")

Production:

La sortie suivante apparaîtra après l'exécution du script. Ici, le script est exécuté deux fois avec un post valide et un post invalide.

Conclusion:

Le concept de variable globale en python est expliqué dans ce tutoriel avec les différents exemples simples pour les nouveaux utilisateurs de python. J'espère que les lecteurs auront la bonne connaissance des variables globales ainsi que des variables locales après avoir lu ce tutoriel.

Regardez la vidéo de l'auteur : ici

Outils utiles pour les joueurs Linux
Si vous aimez jouer à des jeux sur Linux, il est probable que vous ayez utilisé des applications et des utilitaires comme Wine, Lutris et OBS Studio p...
Jeux HD remasterisés pour Linux qui n'ont jamais eu de version Linux plus tôt
De nombreux développeurs et éditeurs de jeux proposent une remasterisation HD d'anciens jeux pour prolonger la durée de vie de la franchise, veuillez ...
Comment utiliser AutoKey pour automatiser les jeux Linux
AutoKey est un utilitaire d'automatisation de bureau pour Linux et X11, programmé en Python 3, GTK et Qt. En utilisant ses fonctionnalités de script e...