Una pizca de Programación Funcional en Python
Este post fue migrado de un blog hecho con Wordpress. Si se ve mal, dejame un comentario y lo arreglo.
Otra cosa que leí es el apéndice A de TPiP : A Selective and Impressionistic Short Review of Python. Encontré muchas cosas interesantes que no conocía y encontré algunas cosas sobre programación funcional que estaba buscando: funciones anónimas, lambda, map, filter y reduce... siga leyendo!
Funciones anónimas:
Python toma de la programación funcional la posibilidad de definir funciones anónimas,
la desventaja de estas es que solo las podremos usar una vez, no podemos invocarlas por su nombre, no tienen :-)
Pero justamente esta es la idea, no tener que definir funciones (simples) que solo se usaran una vez, para usar por
ejemplo (aquí es donde las estoy usando) en funciones que esperan funciones como algunos de sus argumentos (ej: map, filter)
Estas fucniones no pueden (de forma natural) ejecutar más de una sentencia.
Ejemplos para probar en el intérprete:
Ejemplo 1:
>>> lambda x: x+1 # x es el argumento de la función anónima
function _lambda at 0x40219e2c_
Si bien la función fue definida, ya no podemos usarla, no tenemos como referenciarla.
Ejemplo 2:
>>> map(lambda x: x+1, [0, 1, 2, 3]) [1, 2, 3, 4]
Ejemplo 3: una forma de darle un nombre a una función definida mediante 'lambda'
>>> nombre = lambda x: x+1 >>> nombre(5) 6
map, filter y reduce:
Escribí un script con ejemplos sobre estas funciones: funcionesPF.py
Comentarios
Comments powered by Disqus