파이썬 소스 코드에서 lambda 라는 문구가 뵈길래, 또 찾아봄
간단하게 말하면 inline 함수같은 모양새네..
문법은
lambda [매개변수 리스트] : [구문들...매개변수를 여기서 활용하는 간략한 코드]
(lambda x,y: x + y)(10, 20)
>> 30
파이썬의 다양한 기능과 합쳐져서, 강력하게 쉽게 사용할 수 있는 예제를 다양하게 찾아볼 수 있다.
겸사 map, filter, reduce 함수 같은 것도 배우자.
많은 소스들 중에서 아래 링크에서 정보를 획득하도록 하자. 잘 정리된 것만 여기에 올린다. ㅋㅋ
원본 링크 글에 많이 가셔서들 보세요. 여기 아래는 내가 나중에 이해가 쉽도록 간략하게 몇개만 가져옴.
- lambda는 한 줄로 작성가능한 함수이며, 반드시 1줄 이상 넘어가면 안됩니다.
# int와 string을 혼용해서 사용가능
f = lambda x: x if x==1 else 'WRONG'
f(1)
# 1
f(2)
#'WRONG'
- map 함수와 함께 사용한 예제
# 아름다운 python문법은 넘겨주는 list의 size가 달라도 되며, 작은 알아서 size에 맞춰줍니다
sample_data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
sample_data_2 = [1, 1, 1, 10, 100]
list(map(lambda x, y: x+y, sample_data, sample_data_2))
# [2, 3, 4, 14, 105]
- filter 함수로 짝수만 뽑아내는 예제
result = list(filter(lambda x: (x % 2 == 0), sample_data))
print(result)
# [2, 4, 6, 8, 10]
이정도면 이해가 충분하리라 생각된다.
BJ.
'IT > 파이썬' 카테고리의 다른 글
파이썬 flask 작업 중 request 데이터 처리하는 여러 함수들 (0) | 2021.01.25 |
---|---|
파이썬 상속 구조 확인 - 상속된 순서를 보여주는 함수 (0) | 2021.01.25 |
파이썬 - Flask 모듈을 Gunicorn 을 이용하여 Nginx 에 연동하기 - WSGI 서버 (0) | 2021.01.20 |
파이썬 flask 설정 값 읽어오기 - 파일에서 (0) | 2021.01.20 |
파이썬 two way referencing in mongoengine - ReferenceField 팁과 문제 해결 (0) | 2021.01.12 |