Reduce() y funciones lambda
¡Se te da muy bien el uso de las funciones lambda! Aquí tienes una función más para añadir a tu repertorio de habilidades. La función reduce()
es útil para realizar algún cálculo sobre una lista y, a diferencia de map()
y filter()
, devuelve un único valor como resultado. Para utilizar reduce()
, debes importarlo del módulo functools
.
¿Recuerdas gibberish()
de unos ejercicios atrás?
# Define gibberish
def gibberish(*args):
"""Concatenate strings in *args together."""
hodgepodge = ''
for word in args:
hodgepodge += word
return hodgepodge
gibberish()
simplemente toma una lista de cadenas como argumento y devuelve, como resultado de valor único, la concatenación de todas esas cadenas. En este ejercicio, reproducirás esta funcionalidad mediante reduce()
y una función lambda que concatena cadenas.
Este ejercicio forma parte del curso
Introducción a las funciones en Python
Instrucciones de ejercicio
- Importa la función
reduce
del módulofunctools
. - En la llamada a
reduce()
, pasa una función lambda que tome dos argumentos de cadenaitem1
yitem2
y los concatene; pasa también la lista de cadenas,stark
. Asigna el resultado aresult
. El primer argumento de debe ser la función lambda y el segundo argumento es la lista .
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# Import reduce from functools
# Create a list of strings: stark
stark = ['robb', 'sansa', 'arya', 'brandon', 'rickon']
# Use reduce() to apply a lambda function over stark: result
result = reduce(____, ____)
# Print the result
print(result)