Acredito que todo mundo sabe o que anônimo significa não ter nome. Às vezes, não precisamos nomear a função ao escrever um programa. Neste momento, podemos usar expressões lambda para usar funções anônimas.
Vamos usar um exemplo para apresentar o uso simples da função lambda . A variável m é o valor que inserimos. Precisamos usar uma função anônima para retornar a soma dos quadrados de m. o valor é 4.
O código é o seguinte:
m=int(input('Por favor, insira um número:'))#m é o valor de entrada a=lambdax:x*x#Use a variável a para formar uma expressão print('O valor de retorno é:',a(m) )
A saída é:
Insira um número: 6. O valor de retorno é: 36
Vamos dar uma olhada em sua estrutura através da figura abaixo:
Vamos usar uma função anônima através de um exemplo:
m=int(input('Por favor, insira um número:'))#m é o valor de entrada a=lambdax:x+10*10+x*xprint('O valor de retorno é:',a(m))
A saída é:
Insira um número: 5. O valor de retorno é: 130
A partir dos dois exemplos acima, podemos entender que a expressão lambda é equivalente a compactar a função em uma linha de código e, em seguida, chamar a função diretamente por meio da definição da variável. Este método pode simplificar nosso código.
Também podemos usar funções anônimas em sequências. O uso de funções anônimas pode nos ajudar a filtrar dados rapidamente.
Sabe-se que uma lista é [1,4,6,9,12,23,25,28,36,38,41,56,63,77,88,99], precisamos retornar os números pares nela e armazene-os na lista entre.
Podemos usar a função de filtro para filtrar.
O código é o seguinte:
minha_lista=[1,4,6,9,12,23,25,28,36,38,41,56,63,77,88,99]print(lista(filtro(lambdax:x%2==0, minha_lista)))
A saída é:
[4,6,12,28,36,38,56,88]
Analisamos esta expressão de dentro para fora. O primeiro objeto na função filter() é nosso método de filtragem, e o último é o objeto que queremos filtrar. Em seguida, armazenamos esses dados na lista usando a função list(). . e, finalmente, imprimi-lo. Este método pode nos ajudar a integrar os dados rapidamente.
Também podemos formular regras por meio de funções anônimas durante a classificação.
Primeiro, sabemos que um conjunto de listas é [('Tuple A',15,33), ('Tuple B',25,26), ('Tuple C',7,7)]. elemento contém o nome de cada tupla e os valores mínimo e máximo. Precisamos ordenar a lista de acordo com a diferença entre os valores máximo e mínimo da tupla de cada pessoa.
my_list=[('Tuple A',15,33),('Tuple B',25,26),('Tuple C',7,7)]my_list.sort(key=lambdax:x[2 ]-x [1])#Use a palavra-chave key para apresentar o método de classificação. O método de classificação é baseado na diferença entre o terceiro elemento e o segundo elemento. Os índices correspondentes são 2 e 1print(my_list).
A estrutura de saída é:
[('Tupla C',7,7),('Tupla B',25,26),('Tupla A',15,33)]
Podemos fazer um cálculo simples primeiro. Suas diferenças são 18, 1 e 0 respectivamente, então sua ordem deve ser C, B e A. O resultado de retorno x[2]-x[1] na expressão lambda, obtemos. sua diferença e, em seguida, classifique de acordo com a diferença.
As funções anônimas são particularmente importantes ao filtrar dados. Elas podem nos ajudar rapidamente a resolver problemas de dados complexos e complicados. Ao mesmo tempo, podem otimizar nosso código e tornar o código geral mais conciso. seção, aprenderemos as três funções básicas em funções.