람다 함수 (Lambda)
람다 함수 (Lambda)
🎯 이 lesson 을 읽고 나면
이 lesson 을 다 읽고 나면 아래 3가지를 자신 있게 할 수 있습니다.
- ▸✅ lambda + map / filter / sorted key 인자
- ▸✅ lambda 가 복잡해지면 명명 함수로 추출
- ▸✅ functools.partial 로 인자 고정
학습 목표를 체크리스트로 두고 다 답할 수 있게 되면 lesson 을 닫으세요.
lambda 5가지 패턴 — 코드 + 실행 결과
lambda = 이름 없는 한 줄 함수. 짧은 함수를 그 자리에서 만들 때.
1. def vs lambda — 같은 함수
lambda 매개변수: 표현식 — return 자동.
2. 진짜 쓸모 — sorted() 의 key
key=lambda x: ... 가 lambda 최대 사용처. 한 번 쓰고 버리는 함수.
3. map · filter 와 결합
⚠️ 그러나 list comprehension 이 더 Pythonic — [x*x for x in 숫자들].
4. dict 정렬 — value 기준
5. 안 좋은 예 — lambda 남용
규칙: lambda 는 그 자리에서 한 번 쓸 때만. 이름 붙일 거면 def.
한 줄 요약
핵심: 이름 안 붙는 짧은 1회용 함수. 길어지면 def.
💡 핵심 포인트
1. 람다는 단일 표현식만 가능 (문장 불가)
2. 복잡한 로직은 일반 함수 권장
3. sorted(), max(), min()의 key 인자에 활용
Python은 간결하고 읽기 쉬운 문법으로 다양한 분야에 활용됩니다. 인터프리터 언어로 REPL 환경에서 즉시 실행 가능합니다. PEP 8 코딩 스타일 가이드를 따르고, Black/autopep8으로 자동 포맷팅합니다. 타입 힌트(type hints)로 코드 가독성과 IDE 지원을 향상시킵니다. pip로 패키지 관리, venv/conda로 가상환경을 구성합니다.
🐍 실행해보기 — 람다 함수 (Lambda)
🤖 AI 에게 이렇게 요청해보세요
이 lesson 의 개념을 알면 AI 에게 구체적으로 지시할 수 있습니다. 막연한 "고쳐줘" 가 아니라 어휘를 가진 요청 — 그게 토큰 절약의 출발점입니다.
- ▸"이 함수에 타입 힌트 + docstring 추가해줘"
- ▸"이 함수의 부수효과 (전역 변수 변경) 제거해서 순수 함수로 바꿔줘"
왜 이게 토큰을 줄이나
개념을 모를 땐 AI 답변을 받고도 "그게 뭐예요?" 를 다시 물어야 합니다. 그 "다시 물음" 이 토큰을 잡아먹습니다. 개념 한 번 익혀두면 대화가 한 번에 끝납니다.