lambda
JavaScript의 arrow function과 비슷하다. 함수를 재사용하지 않고 익명함수로 선언할 때 유용하게 사용해서, callback 함수로 적절
Basic Syntax
map
iterables 에 사용 가능하며, 모든 요소에 함수를 적용하여 결과값을 반환한다. 새로운 리스트에 해당 요소들을 받고 싶으면 list()
를 사용하면 됨. 여러 iterables를 전달할 수 있다.
Basic Syntax
1
| map(function, iterable[, ...iterables])
|
filter
마찬가지로 iterables에 사용 가능. 함수의 결과값이 True
인 요소만 반환한다. 하나의 iterable만 전달 가능함.
Basic Syntax
1
| filter(function, iterable)
|
Reduce
사실 이 함수 때문에 글을 작성하게 됐는데, functools 라이브러리를 사용한 reduce는 반복문 대신 사용하기 유용한 듯.
(acc, val)
이기 때문에, lambda 작성 시 arguments로 (acc, val)
을 전달
Basic Syntax
1
| reduce(function, iterable)
|
Example
1 2 3 4 5 6
| from functools import reduce li = [1, 2, 3, 4, 5] sum = reduce((lambda x, y: x + y), li)
|