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 del ejercicio
- Importa la función
reducedel módulofunctools. - En la llamada a
reduce(), pasa una función lambda que tome dos argumentos de cadenaitem1yitem2y 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
Prueba este ejercicio y completa el 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)