익명함수

매일 공부(ML)·2022년 11월 29일
0

Fluent Python

목록 보기
29/130

객체로서의 함수

익명 함수

lambda는 파이썬의 단순한 구문이 람다 함수의 순수한 표현식만으로 구성되도록 제한하고, 람다 본체에선 할당문이나 while, try등의 파이선 뭄ㄴ장을 사용할 수 없으므로 익명 함수는 인수 목록 안에서 아주 유용하게 사용된다.

fruits = ['strawberry','fig','apple','cherry','raspberry','banana']
sorted(fruits, key=lambda word: word[::-1])
"""
고위 함수의 인수로 사용하는 방법 외에 익명 함수는 파이썬에서 거의 사용되지 않고
복잡한 람다는 가독성이 떨어지고 사용하기 까다롭다
"""

람다 리팩토링 비법

  • 람다가 하는 일이 무엇인지 설명하는 주석을 작성한다.

  • 잠시 주석을 주의 깊게 파악하고, 주석의 본질을 전달하는 이름을 생각해낸다.

  • 그 이름을 이용해서 람다를 def 문으로 변경한다

  • 주석을 제거한다.

profile
성장을 도울 아카이빙 블로그

0개의 댓글