Bonjour,

Je n'ai pas encore beaucoup d'expérience en Python. Je viens de Java et C++ et je cherche comment définir une variable de classe en Python (équivalent à un champ static de classe en Java ou C++) afin, par exemple, de compter le nombre d'instances d'une classe:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# Y a-t'il moyen d'initialiser ce type de variable
# comme une variable statique (au sens C++/Java) de
# la class Personne?
nPers = 0               #???
class Personne:
    def __init__(self, nm, pm):
        self.__nom = nm
        self.__prenom = pm
        nPers = nPers + 1
 
    def getNom(self):
        return self.__nom
 
    def getPrenom(self):
        return self.__prenom
 
    def printNombre(self):
        print "Il y a", nPers, "personnes!"
 
Thierry = Personne("Chappuis", "Thierry")
Thierry.printNombre()
Le code ci-dessus ne marche pas, et je voudrais éviter de passer par une variable globale comme nPers. Je vous remercie d'avance pour vos conseils. Meilleures salutations

Thierry