[pyar] Pregunta de clases
Santiago Basulto
santiago.basulto en gmail.com
Mar Mar 26 14:48:30 ART 2013
Hola Sebastián. El problema que tenés es que estás haciendo de `texto`
una variable a "nivel de clase". O sea, que texto pertenece a la clase
`aaa`, no a la instancia "pepe" o "gomez". Para hacer eso tendrías que
mover la inicialización de texto al __init__. De esta manera:
class aaa:
def __init__(self,aaa):
self.texto = []
if aaa=="1":
self.texto.append("hola")
if aaa=="2":
self.texto.append("chau")
Fijate que aparte ahí estoy haciendo explícito que la variable
pertenece a la instancia por la utilización de `self`.
Otra cosa a tener en cuenta. Estás pasando `aaa` como parámetro. Y a
su vez es el nombre de la clase. No es muy recomendado. Tratá de
evitarlo.
Lectura recomendada:
http://docs.python.org/2/tutorial/classes.html#class-objects
2013/3/26 Sebastian Scheib <stackpointerex en gmail.com>:
> Buenas, estoy probando algunas cosas con Python (volviendo a acostumbrarme a
> Python que no lo tocaba hace tiempo) y me pasa algo.
>
> Tengo esto:
>
> class aaa:
> texto=[]
> def __init__(self,aaa):
> if aaa=="1":
> self.texto.append("hola")
> if aaa=="2":
> self.texto.append("chau")
>
> pepe=aaa("1")
> gomez=aaa("2")
> print pepe.texto
> print "--------"
> print gomez.texto
>
> La salida de esto me da:
>
> ['hola', 'chau']
> --------
> ['hola', 'chau']
>
> No debería la salida de pepe darme hola y la de gomez chau? Cual sería la
> forma correcta de que esto suceda?
>
> Gracias.
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
--
Santiago Basulto.-
More information about the pyar
mailing list