-2
votes

Pouvons-nous créer une variable pouvant être modifiée à partir de toutes les fonctions de Python?

Bonjour vouloir savoir s'il existe un moyen de déclarer une variable pouvant être modifiée à partir de n'importe quelle fonction sans avoir à utiliser le mot clé global, car j'ai beaucoup de fonctions modifiant une certaine variable et la moitié du temps que j'ai oublié de mettre global myvar lors de la création d'une nouvelle fonction qui modifie myvar.


1 commentaires

Ce que vous décrivez est une variable globale.


3 Réponses :


-1
votes

Oui, il est possible de déclarer une variable globale sans le mot clé global. La portée de la variable est déterminée par l'endroit où elle est déclarée dans le code. Pour déclarer une nouvelle variable globale, déclarez-le simplement en dehors de la portée de toutes les autres fonctions. Pour plus d'aide sur la portée et les variables globales et locales à Python, consultez HTTPS: // www.geeksforgeeks.org/global-local-variables-python/


1 commentaires

Oui mais aussi loin que je comprenne, si je déclare une variable en dehors de ma fonction, je peux accéder à sa valeur de la fonction, mais je ne peux pas la modifier.



1
votes

Vous pouvez utiliser Classes . Lors de la création d'un nouvel objet, vous pouvez initialiser les variables et les utiliser dans n'importe quelle méthode de cet objet.

Ces variables ont auto. préfixe.


3 commentaires

Oui mais avec des cours, je ne peux pas utiliser les variables d'une classe en dehors de la classe


@ Rémicouturier: Vous ne pouvez pas? Pourquoi pas?


Oh oui tu as raison, ça marche (et ça marche aussi avec des dictionnaires)



1
votes

Oui c'est le comportement par défaut de Python. Mais, il y a des nuances que vous devez être au courant de: xxx

Lorsque vous souhaitez manipuler des variables non-conteneurs dans une fonction, vous pouvez le faire de cette façon:

Créer un fichier globals.py avec contenu: xxx

dans votre fichier principal / core: xxx

alloue c'est mauvais pratique et vous ne devez pas utiliser les globaux inflationnistes


0 commentaires