creo que encontre un bug

Arturo Muñoz Tolosa agtugo en gmail.com
Mie Dic 24 04:46:27 CET 2008


Creo que encontre un bug, pero no se bien si lo es me salio cuando 
estaba haciendo
un programa. Trate de simplificarlo solo para mostrar donde reside lo 
que creo que
podria ser un bug, aqui lo que hago es una clase prueba y una clase conjunto
la clase preuba por default tiene:
a =[ ] y la hago un atributo de la clase

Entonces lo que hice fue hacer tres objetos de la clase prueba y se me 
ocurrio
con un append agregarle un elemento, en este caso fue un entero 0
pero mi sorpresa es que al momento de imprimirlo obtuve

[0, 0, 0][0, 0, 0][0, 0, 0]

y yo esperaba [0],[0],[0]

igual y hay un concepto de python que no entiendo,¿ alguna idea?
class prueba:
    def __init__(self, a=[]):
        self.a = a
   
    def __str__(self):
        return str(self.a)   
       
class conjunto:
    def __init__(self, b=[]):
        self.b = b
        for elemento in  self.b:
            elemento.a.append(0)
    def __str__(self):
        vacio = ''
        for elemento in self.b:
            vacio = vacio + str(elemento)
        return vacio
           
           

papa = prueba()
pepe = prueba()
pipi = prueba()

lista = [papa,pepe,pipi]
final=conjunto(lista)
print(final)

_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





Más información sobre la lista de distribución Python-es