본문 바로가기

카테고리 없음

[Python] lambda 함수

반응형

람다(lambda)함수는 파이썬에서 사용되는 익명의 함수입니다. 간단한 함수를 한줄로 정의 할 수 있게 해주는 기능입니다. 

주로 다른 함수의 인자로 사용되거나, 짧은 함수가 필요할때 유용합니다.

기본구조

lambda 인자: 표현식

 

예시

1. 간단한 람다함수

# 일반 함수
def add(x, y):
    return x + y

# 같은 기능의 람다 함수
add_lambda = lambda x, y: x + y

print(add(3, 5))        # 출력: 8
print(add_lambda(3, 5)) # 출력: 8

 

2. 정렬에 사용되는 람다 함수

pairs = [(1, 'one'), (2, 'two'), (3, 'three'), (4, 'four')]
pairs.sort(key=lambda pair: pair[1])
print(pairs)
# 출력: [(4, 'four'), (1, 'one'), (3, 'three'), (2, 'two')]

 

3. map() 함수와 함께 사용

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

 

4. filter() 함수와 사용

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers)
# 출력: [2, 4, 6, 8, 10]

 

람다함수의 장,단점

   1) 장점 

  • 코드를 간결하게 만들어 줍니다.
  • 일회성 사용에 적합합니다.
  • 함수형 프로그래밍 스타일에 유용합니다.

  2) 단점

  • 복잡한 로직을 구현하기에는 적합하지 않습니다.
  • 재사용이 필요한 경우에는 일반 하무가 더 적합할 수 있습니다.
  • 과도한 사용은 코드의 가독성을 떨어뜨릴 수 있습니다.

 

반응형