[Python-es] duda de principiante con variables

Pablo Rodríguez oinos en web.de
Lun Jul 28 16:45:48 CEST 2008


damufo wrote:
>  
> 
> Pablo Rodríguez escribiu:
>> Hola a todos,
>>
>> en un pequeño programilla tengo la necesidad de llamar desde un objeto 
>> de una clase, una variable del objeto __init__ de otra clase.
>>
>> El código sería (obviamente mi ejemplo real no tan tonto):
>>
>> class working:
>>     def __init__(self):
>>         self.action = print "Done"
>>
>>
>> class doing:
>>     def __init__(self):
>>         ....
>>
>>     def on_key_press_event(self, widget, event):
>>         print working.action
>>
>> Pero Python me da el error siguiente (tanto si es 'action' como 
>> 'self.action'):
>>
>> AttributeError: class working has no attribute 'action'
>>
>> ¿Cómo tengo que invocar print para que imprima el 'self.action' de la 
>> clase 'working'?
>>
>> Gracias de antemano,
>>
>>
>> Pablo
>> _______________________________________________
>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es
>> FAQ: http://listas.aditel.org/faqpyes
>>
> 
> a lo mejor si hereda de la otra te sirve...
> 
>  class Workin:
>      def __init__(self):
>          self.action = print "Done"
> 
> 
>  class Doing(Working):
>      def __init__(self):
>          ....
> 
>      def on_key_press_event(self, widget, event):
>          print self.action

Gracias por la respuesta.

Me sirve la herencia, si bien hay atributos que tendré que mover a 
'on_key_press_event'.

Lo que tengo poco claro es que si será poco elegante, pero yo quiero que 
funcione y luego ya veremos.

Gracias por la ayuda,


Pablo


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