익명이란 이름이 없다는 뜻입니다. 때때로 우리는 프로그램을 작성할 때 함수에 이름을 붙일 필요가 없습니다. 이때 우리는 파이썬에서 익명 함수를 사용하기 위해 람다 표현식을 사용할 수 있습니다.
람다 함수 의 간단한 사용법을 소개하겠습니다. 변수 m은 우리가 입력한 값입니다. 즉, m의 제곱의 합을 반환하려면 익명 함수를 사용해야 합니다. 값은 4입니다.
코드는 다음과 같습니다:
m=int(input('숫자를 입력하세요:'))#m은 입력 값입니다. a=lambdax:x*x#변수 a를 사용하여 표현식을 구성합니다. print('반환 값은:',a(m) )
출력은 다음과 같습니다
숫자를 입력하십시오: 6. 반환 값은: 36
아래 그림을 통해 그 구조를 살펴보자.
예를 통해 익명 함수를 사용해 보겠습니다.
m=int(input('숫자를 입력하세요:'))#m은 입력 값입니다. a=lambdax:x+10*10+x*xprint('반환 값은:',a(m))
출력은 다음과 같습니다
숫자를 입력하십시오: 5. 반환 값은: 130
위의 두 예를 통해 람다 표현식은 함수를 한 줄의 코드로 압축한 다음 변수 정의를 통해 직접 함수를 호출하는 것과 동일하다는 것을 이해할 수 있습니다. 이 방법을 사용하면 코드가 단순화됩니다.
익명 함수를 시퀀스로 사용할 수도 있습니다. 익명 함수를 사용하면 데이터를 빠르게 필터링하는 데 도움이 됩니다.
목록은 [1,4,6,9,12,23,25,28,36,38,41,56,63,77,88,99]로 알려져 있으며, 그 안의 짝수를 반환해야 합니다. 목록에 저장합니다.
필터 기능을 사용하여 필터링할 수 있습니다.
코드는 다음과 같습니다:
my_list=[1,4,6,9,12,23,25,28,36,38,41,56,63,77,88,99]print(list(필터(lambdax:x%2==0, my_list)))
출력은 다음과 같습니다
[4,6,12,28,36,38,56,88]
이 표현식을 내부에서 외부로 분석합니다. filter() 함수의 전자 객체는 필터링 방법이고 후자는 필터링하려는 객체입니다. 그런 다음 list() 함수를 사용하여 이 데이터를 목록에 저장합니다. . , 마지막으로 인쇄해 보세요. 이 방법을 사용하면 데이터를 빠르게 통합할 수 있습니다.
정렬할 때 익명 함수를 통해 규칙을 공식화할 수도 있습니다.
먼저, 목록 집합이 [('Tuple A',15,33), ('Tuple B',25,26), ('Tuple C',7,7)]라는 것을 알고 있습니다. 요소에는 각 튜플의 이름과 최소값 및 최대값이 포함되어 있습니다. 다음 코드를 참조하세요.
my_list=[('튜플 A',15,33),('튜플 B',25,26),('튜플 C',7,7)]my_list.sort(key=lambdax:x[2 ]-x [1])#key 키워드를 사용하여 정렬 방법을 소개합니다. 정렬 방법은 세 번째 요소와 두 번째 요소의 차이를 기반으로 합니다. 해당 인덱스는 2와 1print(my_list)입니다.
출력 구조는 다음과 같습니다.
[('튜플 C',7,7),('튜플 B',25,26),('튜플 A',15,33)]
먼저 간단한 계산을 할 수 있습니다. 차이점은 각각 18, 1, 0이므로 순서는 C, B, A여야 합니다. 람다 식의 반환 결과 x[2]-x[1]은 다음과 같습니다. 차이점을 확인한 다음 차이점에 따라 정렬합니다.
익명 함수는 데이터를 필터링할 때 특히 중요합니다. 이는 복잡하고 번거로운 데이터 문제를 신속하게 해결하는 데 도움이 되며, 동시에 코드를 최적화하고 전체 코드를 더욱 간결하게 만들 수 있습니다. 섹션에서는 함수의 세 가지 기본 함수에 대해 알아봅니다.