RedMeta

안녕하세요, 파이썬 팬 여러분! 오늘은 파이썬에서 좀 신기하고 재밌는 도구인 Lambda 함수에 대해 이야기해보려고 해요. “람다? 그게 뭐야?“라고 생각할 수도 있는데, 걱정 마세요! 마치 마법 주문처럼 짧고 강력한 이 함수를 초보자도 쉽게 이해할 수 있게, 비유도 섞어서 설명할게요. 자, 준비됐죠? 출발!

 

Lambda 함수가 뭔가요?

Lambda 함수는 파이썬에서 이름 없는 작은 함수를 만드는 방법이에요. 보통 함수는 def로 정의하고 이름을 붙이잖아요? 근데 Lambda는 “이름은 필요 없어, 바로 써!“라는 스타일이에요. 한 줄로 끝낼 수 있는 간단한 작업에 딱이에요.

비유하자면, Lambda는 요리할 때 “정식 레시피북” 대신 “간단한 메모지”에 적어서 바로 쓰는 느낌이에요. 예를 들어, “계란 2개 풀어서 소금 조금” 같은 간단한 지시사항!

 

기본 구조: 이렇게 생겼어요

Lambda 함수는 한 줄로 쓰고, 구조는 간단해요:

lambda 인자: 표현식

  • lambda: “이건 Lambda 함수야!“라는 키워드.
  • 인자: 함수에 넣을 재료(변수).
  • 표현식: 그 재료로 뭘 할 건지(계산이나 작업).

예를 들어:

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

여기서 lambda x, y: x + y는 “x와 y를 받아서 더해줘”라는 뜻이에요. 마치 “숫자 두 개 주면 합쳐줄게!“라고 말하는 작은 요리사 같죠.

 

 

일반 함수 vs Lambda 함수

일반 함수랑 비교해보면 차이가 확 느껴져요:

# 일반 함수

def add(x, y):
    return x + y
print(add(3, 5))  # 출력: 8

# Lambda 함수

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

같은 결과를 내는데, Lambda는 더 짧고 빠르게 썼죠? Lambda는 Ascendant는 “필요할 때만 꺼내 쓰는 비밀 무기” 같은 느낌이에요.

 

어디에 쓰나요? 재밌는 예제

Lambda는 주로 짧고 간단한 작업이나, 다른 함수와 함께 쓸 때 빛을 발해요. 몇 가지 예제를 통해 알아볼게요!

1. 리스트 정렬에 활용

fruits = [("apple", 3), ("banana", 2), ("cherry", 5)]
sorted_fruits = sorted(fruits, key=lambda x: x[1])
print(sorted_fruits)  # 출력: [('banana', 2), ('apple', 3), ('cherry', 5)]

여기서 lambda x: x[1]은 “리스트의 각 튜플에서 두 번째 값(숫자)을 기준으로 정렬해줘”라는 뜻이에요. 마치 “숫자 보고 줄 세워!“라고 외치는 코치 같아요.

2. map()과 함께 쓰기

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

map()은 리스트의 각 요소에 Lambda를 적용해요. “모두 제곱해줘!“라는 주문을 한 방에 해결!

3. filter()와 함께 쓰기

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

filter()는 조건에 맞는 것만 골라내는데, lambda x: x % 2 == 0은 “짝수만 남겨줘!“라는 명령이에요. 까다로운 심사위원처럼 홀수를 쳐내는 느낌!

 

Lambda의 매력 포인트

  • 짧고 간결: 한 줄로 끝낼 수 있어 코드가 깔끔해요.
  • 즉석에서 사용: 이름 지을 필요 없이 바로 쓸 수 있어요.
  • 다른 함수와 콤보: sorted(), map(), filter() 같은 친구들과 환상적인 팀워크를 보여줘요.

비유하자면, Lambda는 “한 번 쓰고 버리는 일회용 컵” 같아요. 필요할 때 꺼내 쓰고, 복잡한 건 def한테 맡기면 돼요.

 

주의할 점

  • 복잡하면 안 돼요: Lambda는 간단한 작업에 최적화돼 있어요. 여러 줄이 필요하면 일반 함수로 가는 게 낫죠.
  • 가독성: 너무 남발하면 코드 읽기가 어려워질 수 있어요. 팀 작업이라면 동료 눈치도 봐야 해요!

 

파이썬 Lambda 함수는 마치 주머니 속 “작은 마법 지팡이” 같아요. 간단한 조건이나 계산을 한 줄로 뚝딱 해결해주니, 코딩이 더 재밌어지죠. 위 예제를 직접 쳐보고, 숫자 대신 문자열이나 다른 리스트로 바꿔서 놀아보세요. “아, 이게 이렇게 되는구나!” 하면서 감 잡힐 거예요.

궁금한 점 있으면 언제든 댓글로 물어보시고, 다음엔 더 신나는 파이썬 이야기로 찾아올게요! 😊

즐거운 코딩 되세요!

공유하기

facebook twitter kakaoTalk kakaostory naver band