Maison >développement back-end >Tutoriel Python >Comment empêcher le partage de données de classe entre instances en Python ?
Comment isoler les données de classe pour des instances individuelles
Pour éviter que les données de classe soient partagées entre plusieurs instances et garantir que chaque instance conserve ses propres données, suivez ces étapes :
Déclarez les variables dans le constructeur (__init__ Méthode)
Au lieu de déclarer des variables de niveau classe en dehors de toute méthode, définissez-les dans la méthode constructeur init. Par exemple :
class a: def __init__(self): self.list = [] # Declared within __init__ to create instance-specific lists
En initialisant la liste dans __init__, une nouvelle instance de la liste est créée à côté de chaque nouvelle instance de l'objet.
Exemple de code :
class a: def __init__(self): self.list = [] x = a() y = a() x.list.append(1) y.list.append(2) x.list.append(3) y.list.append(4) print(x.list) # prints [1, 3] print(y.list) # prints [2, 4]
Dans cet exemple, la liste n'est plus partagée entre les deux instances (x et y), et chaque instance conserve son propre données, comme vous le souhaitez.
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!