Clase extranha (tvv)

Milton Galo Patricio Inostroza Aguilera minoztro en gmail.com
Mar Nov 18 05:40:53 CET 2008


2008/11/18 Renato Covarrubias <rnt en bla.cl>:
> El Lunes, 17 de Noviembre de 2008, Tany Villalba Villalba escribió:
>> Buen dia:
>>
>> me paso una cosa curiosa que derepente estoy mal bueno
>> tengo una clase que le puse una propiedad que es una lista de datos (se
>> llama arreglo):
>>
>> **** libreria1.py
>> class A()
>>     arreglo=[]
>>     def agregar_item(self, valor)
>>          arreglo.append(valor)
>
> Ahí defines que 'arreglo' pertenece a la clase, por lo tanto, a todas las
> instancias de ella.
>
> Deberia ser algo asi como:
>
> **** libreria1.py
> class A()
>    def __init__(self):
>        arreglo=[]
>    def agregar_item(self, valor):
>        arreglo.append(valor)
>
> Así, arreglo es de la instancia.

arreglo es una variable local al método __init__, por lo que para el
método agregar_item la variable arreglo no existe.  El código queda
modificado es el siguiente

class A(object)
    def __init__(self):
        self.arreglo=[]
    def agregar_item(self, valor):
        self.arreglo.append(valor)

Me gusta que mis clases hereden de object, claro estoy utilizando python 2.5.2

>
> Saludos!
>
> --
> Renato Covarrubias Romero       -       counter.li.org  #399677
> rnt [at] bla.cl                         http://rnt.bla.cl
>
> _______________________________________________
> Lista de correo Python-es
> http://listas.aditel.org/listinfo/python-es
> FAQ: http://listas.aditel.org/faqpyes
>



-- 
Milton Inostroza Aguilera
------------ próxima parte ------------
_______________________________________________
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