SeouliteLab

[Python/파이썬] Lambda 함수: 익명 함수 본문

프로그래밍

[Python/파이썬] Lambda 함수: 익명 함수

Seoulite Lab 2024. 3. 6. 09:47

Lambda 함수는 익명 함수로, 이름이 없는 한 줄짜리 함수를 의미합니다. 주로 간단한 연산이나 함수를 정의할 때 사용되며, 함수를 정의하는 일반적인 방법보다 간결하게 표현할 수 있습니다. 이번 글에서는 Python의 Lambda 함수에 대해 자세히 알아보고 여러 예제를 살펴보겠습니다.

Lambda 함수의 기본 구조

lambda arguments: expression

Lambda 함수는 키워드 lambda로 시작하며, 인자(arguments)와 표현식(expression)으로 구성됩니다.

예제 1: 덧셈 연산을 수행하는 Lambda 함수

add = lambda x, y: x + y
print(add(3, 5))  # 출력 결과: 8

두 개의 인자를 받아서 덧셈 연산을 수행하는 Lambda 함수입니다.

예제 2: 제곱 연산을 수행하는 Lambda 함수

square = lambda x: x ** 2
print(square(4))  # 출력 결과: 16

인자를 받아서 제곱 연산을 수행하는 Lambda 함수입니다.

예제 3: 조건문을 사용하는 Lambda 함수

is_even = lambda x: True if x % 2 == 0 else False
print(is_even(7))  # 출력 결과: False

인자를 받아서 해당 값이 짝수인지를 판별하는 Lambda 함수입니다.

예제 4: Lambda 함수를 리스트의 요소로 사용하기

numbers = [1, 2, 3, 4, 5]
squared_numbers = list(map(lambda x: x ** 2, numbers))
print(squared_numbers)  # 출력 결과: [1, 4, 9, 16, 25]

Lambda 함수를 map() 함수와 함께 사용하여 리스트의 각 요소를 제곱하는 예제입니다.

예제 5: Lambda 함수를 정렬 기준으로 사용하기

people = [('Alice', 30), ('Bob', 20), ('Charlie', 40)]
people.sort(key=lambda person: person[1])
print(people)  # 출력 결과: [('Bob', 20), ('Alice', 30), ('Charlie', 40)]

Lambda 함수를 정렬 기준으로 사용하여 튜플 리스트를 나이에 따라 정렬하는 예제입니다.

예제 6: 리스트의 각 요소에 Lambda 함수 적용하기

numbers = [1, 2, 3, 4, 5]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers)  # 출력 결과: [2, 4]

Lambda 함수를 filter() 함수와 함께 사용하여 리스트에서 짝수만 필터링하는 예제입니다.