Bonjour à tous,
Dans la situation ci-dessous, l'attribut "test" de la classe mère ne devrait-il pas être initialisé à chaque nouvelle instance de Child ?
Au lieu de quoi, le résultat du test donne : 1, 2, 3, 4, 5, comme si toutes les instances de Child partageaient le même attribut "test".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 class Mother: test = [] def get_test(self): self.test.append(1) return self.test class Child(Mother): """ """ for child in [Child(), Child(), Child(), Child(), Child()] print len(child.get_test())
Cela me paraît contre-intuitif... Je fais erreur ?
Comment puis-je faire en sorte que chaque instance de Child hérite de sa propre instance de Mother ?
Merci pour vos lumières.
--
Python 2.7.3
Ubuntu 12.04
Partager