Type function

Chema Cortes pych3m4 en gmail.com
Jue Dic 28 11:51:44 CET 2006


El 27/12/06, Oswaldo Hernández<listas en soft-com.es> escribió:

> No conocia la funcion 'callable'.
>
> Haciendo unas pruebas con ella veo que cuando se utiliza con clases devuelve true, mientras que
> hasattr(clase, "__call__") devuelve false, lo que es mejor para mis intenciones.

En python, para mi gusto, el tratar las funciones como objetos de
"primera clase" (http://en.wikipedia.org/wiki/First-class_function) no
está del todo bien resuelto. El tipo "function" no existe como tal,
por lo que no se pueden crear subtipos de él, por ejemplo. Para
chequeos, el tipo "function" se obtiene como types.FunctionType

>>> import types
>>> type(lambda x:x) is types.FunctionType
True


Como bien dices, por "callables" se consideran a las funciones y a las clases.




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