Cómo aislar datos de clase para instancias individuales
Para evitar que los datos de clase se compartan entre varias instancias y garantizar que cada instancia mantenga sus propios datos, siga estos pasos:
Declarar variables dentro del constructor (método __init__)
En lugar de Al declarar variables de nivel de clase fuera de cualquier método, defínalas dentro del método constructor init. Por ejemplo:
class a: def __init__(self): self.list = [] # Declared within __init__ to create instance-specific lists
Al inicializar la lista dentro de __init__, se crea una nueva instancia de la lista junto con cada nueva instancia del objeto.
Código de muestra:
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]
En este ejemplo, la lista ya no se comparte entre las dos instancias (xey), y cada instancia mantiene sus propios datos separados, según se desee .
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3