Derivacion de tipos, interceptar operaciones
Oswaldo Hernández
listas en soft-com.es
Vie Mar 14 18:43:40 CET 2008
Hola,
Estoy intentando manipular las operaciones sobre tipos base utilizando __getattribute__
class Entero(int):
def __getattribute__(self, attr):
print "Interceptado:", attr
return super(Entero, self).__getattribute__(attr)
Si utilizo la llamada explicita al metodo si se intercepta:
>>> e = Entero(300)
>>> e.__add__(5)
Interceptado: __add__
305
>>>
Pero si utilizo los operadores, el método no es interceptado:
>>> e + 5
305
>>>
Segun he entendido de la documentación, cuando se utilizan los operadores +, -, etc .. se ejecutan
las funciones correspondientes __add__, __sub__, ..
¿Habria alguna forma de interceptar estas operaciones cuando se utilizan operadores?
--
*****************************************
Oswaldo Hernández
oswaldo (@) soft-com (.) es
*****************************************
PD:
Antes de imprimir este mensaje, asegúrese de que es necesario.
El medio ambiente está en nuestra mano.
_______________________________________________
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