None

Páginas: 2 (418 palabras) Publicado: 29 de mayo de 2014
Iteraciones de orden superior sobre listas
Una de las cosas más interesantes que podemos hacer con nuestras
funciones de orden superior es pasarlas como argumentos de las fun-
ciones map,filter y reduce. Estas funciones nos permiten sustituir los
bucles típicos de los lenguajes imperativos mediante construcciones
equivalentes.
map(function, sequence[, sequence, ...])La función map aplica una función a cada elemento de una secuencia y
devuelve una lista con el resultado de aplicar la función a cada elemen-
to. Si se pasan como parámetros n secuencias, lafunción tendrá que
aceptar n argumentos. Si alguna de las secuencias es más pequeña que
las demás, el valor que le llega a la función function para posiciones
mayores que el tamaño de dichasecuencia será None.
A continuación podemos ver un ejemplo en el que se utiliza map para
elevar al cuadrado todos los elementos de una lista:
def cuadrado(n):
return n** 2
l = [1, 2, 3]
l2 = map(cuadrado, l)
filter(function, sequence)
La funcion filter verifica que los elementos de una secuencia cum-
plan una determinada condición,devolviendo una secuencia con los
elementos que cumplen esa condición. Es decir, para cada elemento de
sequence se aplica la función function; si el resultado es True se añade
a la lista y encaso contrario se descarta.
A continuación podemos ver un ejemplo en el que se utiliza filter
para conservar solo los números que son pares.
def es_par(n):
return (n % 2.0== 0)
l = [1, 2, 3]
l2 = filter(es_par, l)
reduce(function, sequence[, initial])
La función reduce aplica una función a pares de elementos de una
secuencia hasta dejarla en unsolo valor.
A continuación podemos ver un ejemplo en el que se utiliza reduce
para sumar todos los elementos de una lista.
def sumar(x, y):
return x + y
l = [1, 2, 3]...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • None
  • la nona
  • la nona
  • None
  • None
  • None
  • nono
  • ÑOÑO

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS