Python - Función Lambda
#35 ejemplos de funciones lambda en Python:
#1. Función lambda que devuelve la suma de dos números:
suma = lambda x, y: x + y
print(suma(2, 3)) # Output: 5
#2. Función lambda para definir una función anónima con múltiples argumentos:
suma = lambda a, b, c: a + b + c
print(suma(2, 3, 4)) # Output: 9
#3. Función lambda para definir una función que devuelve el doble de un número:
doble = lambda x: x * 2
print(doble(3)) # Output: 6
#4. Función lambda una función que devuelve el triple de un número:
triple = lambda x: x * 3
print(triple(2)) # Output: 6
#5. Función lambda que devuelve el producto de dos números:
producto = lambda x, y: x * y
print(producto(2, 3)) # Output: 6
#6. Función lambda que devuelve el cuadrado de un número:
cuadrado = lambda x: x ** 2
print(cuadrado(3)) # Output: 9
#7. Función lambda que devuelve el cubo de un número:
cubo = lambda x: x ** 3
print(cubo(3)) # Output: 27
#8. Función lambda que devuelve True si un número es par, False si es impar:
es_par = lambda x: x % 2 == 0
print(es_par(2)) # Output: True
print(es_par(3)) # Output: False
#9. Función lambda que devuelve True si un número es impar, False si es par:
es_impar = lambda x: x % 2 != 0
print(es_impar(2)) # Output: False
print(es_impar(3)) # Output: True
#10. Función lambda que devuelve True si un número es positivo, False si es negativo:
es_positivo = lambda x: x > 0
print(es_positivo(2)) # Output: True
print(es_positivo(-2)) # Output: False
#11. Función lambda que devuelve True si un número es negativo, False si es positivo:
es_negativo = lambda x: x < 0
print(es_negativo(2)) # Output: False
print(es_negativo(-2)) # Output: True
#12. Función lambda que devuelve True si un número es cero, False si no lo es:
es_cero = lambda x: x == 0
print(es_cero(0)) # Output: True
print(es_cero(2)) # Output: False
#13. Función lambda que devuelve el valor absoluto de un número:
absoluto = lambda x: abs(x)
print(absoluto(-2)) # Output: 2
#14. Función lambda que devuelve el número más grande de dos números:
maximo = lambda x, y: x if x > y else y
print(maximo(2, 3)) # Output: 3
#15. Función lambda que devuelve el número más pequeño de dos números:
minimo = lambda x, y: x if x < y else y
print(minimo(2, 3)) # Output: 2
#16. Función lambda para definir una función anónima con múltiples condiciones:
es_mayor_de_edad = lambda edad: True if edad >= 18 else False
#17. Función lambda para definir una función anónima con múltiples argumentos y condiciones:
es_mayor_de_edad = lambda edad, pais: True if edad >= 18 and pais == 'Argentina' else False
#18. Función lambda que devuelve la longitud de una cadena de texto:
longitud = lambda texto: len(texto)
print(longitud('Hola')) # Output: 4
#19. Función lambda que devuelve la primera letra de una cadena de texto:
primera_letra = lambda texto: texto[0]
print(primera_letra('Hola')) # Output: 'H'
#20. Función lambda que devuelve la última letra de una cadena de texto:
ultima_letra = lambda texto: texto[-1]
print(ultima_letra('Hola')) # Output: 'a'
#21. Función lambda que devuelve una lista ordenada de números:
ordenar = lambda lista: sorted(lista)
print(ordenar([3, 1, 4, 2])) # Output: [1, 2, 3, 4]
#22. Función lambda que devuelve una lista ordenada de números en orden descendente:
ordenar_descendente = lambda lista: sorted(lista, reverse=True)
print(ordenar_descendente([3, 1, 4, 2])) # Output: [4, 3, 2, 1]
#23. Función lambda que devuelve una lista de números pares de una lista dada:
pares = lambda lista: list(filter(lambda x: x % 2 == 0, lista))
print(pares([1, 2, 3, 4, 5, 6])) # Output: [2, 4, 6]
#24. Función lambda que devuelve una lista de números impares de una lista dada:
impares = lambda lista: list(filter(lambda x: x % 2 != 0, lista))
print(impares([1, 2, 3, 4, 5, 6])) # Output: [1, 3, 5]
#25. Función lambda que devuelve una lista de números mayores a un número dado:
mayores_a = lambda lista, n: list(filter(lambda x: x > n, lista))
print(mayores_a([1, 2, 3, 4, 5, 6], 3)) # Output: [4, 5, 6]
#26. Función lambda que devuelve una lista de números menores a un número dado:
menores_a = lambda lista, n: list(filter(lambda x: x < n, lista))
print(menores_a([1, 2, 3, 4, 5, 6], 4)) # Output: [1, 2, 3]
#27. Función lambda que devuelve una lista de números entre dos números dados:
entre = lambda lista, a, b: list(filter(lambda x: a < x < b, lista))
print(entre([1, 2, 3, 4, 5, 6], 2, 5)) # Output: [3, 4]
#28. Función lambda que devuelve una lista de palabras que contienen una letra dada:
contiene_letra = lambda lista, letra: list(filter(lambda x: letra in x, lista))
print(contiene_letra(['hola', 'adios', 'bienvenido'], 'o')) # Output: ['hola', 'bienvenido']
#29. Función lambda que devuelve una lista de palabras que empiezan con una letra dada:
empieza_con = lambda lista, letra: list(filter(lambda x: x.startswith(letra), lista))
print(empieza_con(['hola', 'adios', 'bienvenido'], 'a')) # Output: ['adios']
#30. Función lambda que devuelve una lista de palabras que terminan con una letra dada:
termina_con = lambda lista, letra: list(filter(lambda x: x.endswith(letra), lista))
print(termina_con(['hola', 'adios', 'bienvenido'], 'o')) # Output: ['hola']
#31. Función lambda que devuelve una lista de palabras en mayúsculas:
mayusculas = lambda lista: list(map(lambda x: x.upper(), lista))
print(mayusculas(['hola', 'adios', 'bienvenido'])) # Output: ['HOLA', 'ADIOS', 'BIENVENIDO']
#32. Función lambda que devuelve una lista de palabras en minúsculas:
minusculas = lambda lista: list(map(lambda x: x.lower(), lista))
print(minusculas(['HOLA', 'ADIOS', 'BIENVENIDO'])) # Output: ['hola', 'adios', 'bienvenido']
#33. Función lambda que devuelve una lista de palabras con la primera letra en mayúscula:
capitalizar = lambda lista: list(map(lambda x: x.capitalize(), lista))
print(capitalizar(['hola', 'adios', 'bienvenido'])) # Output: ['Hola', 'Adios', 'Bienvenido']
#34. Función lambda que devuelve una lista de números elevados a una potencia dada:
potencia = lambda lista, n: list(map(lambda x: x ** n, lista))
print(potencia([1, 2, 3], 2)) # Output: [1, 4, 9]
#35. Función lambda que devuelve una lista de números redondeados a un número de decimales dado:
redondear = lambda lista, n: list(map(lambda x: round(x, n), lista))
print(redondear([1.2345, 2.3456, 3.4567], 2)) # Output: [1.23, 2.35, 3.46]