[pyar] Pregunta de clases

Sebastian Scheib stackpointerex en gmail.com
Mar Mar 26 17:04:02 ART 2013


A, si, eso lo cree como ejemplo de otra cosa similar que estaba haciendo,
fue algo asi rápido que hice para probar que estaba pasando.

Gracias :)


El 26 de marzo de 2013 17:02, fisa <fisadev en gmail.com> escribió:

> El día 26 de marzo de 2013 14:56, Sebastian Scheib
> <stackpointerex en gmail.com> escribió:
> > Muchísimas gracias a todos, ahora lo entendí.
> >
> >
> > El 26 de marzo de 2013 14:55, Ramiro Morales <cramm0 en gmail.com>
> escribió:
> >>
> >> On Mar 26, 2013 2:30 PM, "Sebastian Scheib" <stackpointerex en gmail.com>
> >> wrote:
> >> >
> >> > 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?
> >>
> >> texto es un atributo de la clase aaa, no es un atributo de las
> instancias
> >> de aaa. Por esa razón es compartido por todas las instancias.
> >>
> >> Si queres que sean atributos de instancia tenes que no declararlo a
> nivel
> >> clase e inicializalo en un metodo, usualmente el inicializador __init__
> >>
> >>
>
> Como detalle extra, para ahorrarte futuros dolores de cabeza, a las
> clases nombralas con CamelCase. Lo digo porque ya veo en ese ejemplo
> una clase y un parámetro que se llaman igual, tarde o temprano en
> algún punto algo no va a ser la cosa que esperabas que fuese :)
>
> Y si tenés un poco más de ganas, mirate PEP8, que incluye esa regla y
> unas cuantas más sobre cómo se formatea el código python normalmente.
>
> Saludos!
>
> --
> fisa  -  Juan Pedro Fisanotti
> _______________________________________________
> 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
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20130326/9c4f0be0/attachment.html>


More information about the pyar mailing list