Este artículo le permite comprender a fondo [las funciones lambda en Python]

Debería haber escuchado que la aplicación de Python le permite reducir la carga de trabajo repetitiva de un día a unos minutos o incluso menos. Desde entonces, horas de trabajo libres y estudio de métodos de trabajo cada vez más eficientes. Mejore aún más la eficiencia del trabajo y haga que el trabajo sea más brillante. Esto no es un anuncio, esta es una imagen de martillo real.

Este artículo explorará contigo la función lambda en Python, para que puedas comprender el principio de esta función en el menor tiempo posible. También puede utilizar el tiempo fragmentado para consolidar esta función para que sea más eficiente en el proceso de procesamiento.
  
inserte la descripción de la imagen aquí
  
  

1. Definición de función lambda

    
La función lambda es una función integrada de uso común en Python, también conocida como función anónima. En comparación con las funciones ordinarias, solo tiene un cuerpo de función, y se omiten def y return, lo que hace que la estructura parezca más simplificada. Su sintaxis de llamada básica es la siguiente:

lambda [var1 [,var2,…varn]]:expression

[var1 [,var2,…varn]]: Parámetros formales, que pueden entenderse como parámetros de entrada para su uso en expresiones.

expresión: expresión de función cuyo resultado es el valor de retorno de la función lambda.

  
  

Dos, instancia de función lambda

  

Ejemplo 1: Comparación de funciones lambda y funciones ordinarias

  
Defina una función lambda, asígnela a una variable y llame a la función indirectamente a través de esta variable.

fun_1 = lambda a,b: a*2+b*3
fun_1(1,2)

obtuve la respuesta:

8

Entre ellos, a y b son parámetros formales, es decir, parámetros de entrada, que son utilizados por la expresión a 2+b 3.
  
Defina una función ordinaria, el enunciado es el siguiente:

def fun1(a,b):
    return a*2+b*3
fun1(1, 2)

obtuve la respuesta:

8

Se puede encontrar que la diferencia entre la aplicación de la función lambda y la función ordinaria es que faltan las instrucciones def y return, y la función lambda se escribe directamente en una línea, lo que es más simplificado. Sin embargo, el atributo anónimo aún no se ha reflejado aquí.

  

Ejemplo 2: Encuentra una ecuación cuadrática en una variable

  
Cuando estábamos en la escuela secundaria, a menudo veíamos esta pregunta: F(x)=a x^2+b x+c, when a=2, b=3, c=4, F(-1) , F (2), valores F(5).
  
Método 1: Aplicar la función lambda para resolver

F_x = lambda x:2*x**2+3*x+4
print(F_x(-1))
print(F_x(2))
print(F_x(5))

obtuve la respuesta:

3
18
69

  
Método 2: Aplicar funciones ordinarias para resolver

def F_x(x):
    return 2*x**2+3*x+4
print(F_x(-1))
print(F_x(2))
print(F_x(5))

obtuve la respuesta:

3
18
69

Se puede encontrar que los resultados de la solución de aplicar la función lambda y la función ordinaria son los mismos.

  

Ejemplo 3: Usado junto con el filtro de función de orden superior

  
El filtro de función de orden superior se describirá en detalle en artículos posteriores.Se utiliza principalmente para filtrar la lista y seleccionar valores en la lista que cumplen condiciones específicas. Por ejemplo, si desea seleccionar múltiplos de 3 en la secuencia, la declaración es la siguiente:

cs_data = list([2, 8, 11, 12, 15, 6, 1, 7])
list(filter(lambda x:x%3==0, cs_data))

obtuve la respuesta:

[12, 15, 6]

También se puede ver con sentido común que el resultado final es seleccionar un múltiplo de 3 en la secuencia cs_data. Cuando se usa junto con funciones de orden superior, las ventajas de las funciones lambda se destacan aún más. En este momento, no hay necesidad de definir una función ordinaria de antemano, simplemente pase el resultado de la función lambda como un parámetro a la función de orden superior directamente dentro de la función de orden superior, y es verdaderamente anónimo.

  

Ejemplo 4: uso con la función sorted

  
Si queremos ordenar una serie de números de acuerdo al valor absoluto del valor, podemos usar la función sorted y la función lambda para lograrlo, el enunciado es el siguiente:

my_list = [3, 5, -2, 10, -6, 8]
sorted(my_list, key=lambda x:abs(x))

obtuve la respuesta:

[-2, 3, 5, -6, 8, 10]

Se puede encontrar que el resultado obtenido es una secuencia ordenada por el valor absoluto del valor.

Hasta aquí se ha explicado la función lambda en Python, si quieres saber más sobre las funciones en Python, puedes ir a la cuenta oficial de "Ali Yiyang's Code" para leer artículos relacionados sobre el módulo "Learning Python" .

  
Te puede interesar:
Dibuja Pikachu con Python
Dibuja un mapa de nube de palabras
con Python Dibuja 520 latidos eternos del corazón con Python Reconocimiento facial de Python: eres
en mis ojos
el único Usa la biblioteca py2neo en Python para operar neo4j y construir un mapa de relaciones Colección de código fuente de confesión romántica de Python (amor, rosa, pared de fotos, confesión bajo las estrellas)


Mantenga presionado (escanear) para reconocer el código QR anterior para aprender más Python y conocimientos de modelado, haciendo que su estudio y trabajo sean más brillantes.

Supongo que te gusta

Origin blog.csdn.net/qq_32532663/article/details/125247034
Recomendado
Clasificación