0%

유용한 python methods

lambda

JavaScript의 arrow function과 비슷하다. 함수를 재사용하지 않고 익명함수로 선언할 때 유용하게 사용해서, callback 함수로 적절

Basic Syntax

1
lambda args: exp

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) # output: 15
# (1)+2
# ((1)+2)+3
# ...