728x90
반응형
○ map() : 반복가능한 iterable 객체를 받아서, 각 요소에 함수를 적용해 주는 함수
○ filter() : 특정 조건으로 걸러서 걸러진 요소들로 iterator 객체를 만들어서 리턴해주는 함수
○ reduce() : 리스트 데이터를 처음부터 순서대로 특정 함수를 실행하여 결과를 누적시켜 주는 함수
→ "from functools import reduce" 해야 사용이 가능하다.
[ Map()와 Filter() 작동원리 ]
def odd_even(num):
return "odd" if num % 2 else "even"
ls = [1,2,3,4,5]
print(list(map(odd_even, ls)))
# 출력결과
['odd', 'even', 'odd', 'even', 'odd']
def odd_even2(num):
return True if num % 2 else False
ls = [1,2,3,4,5]
print(list(filter(odd_even2, ls)))
# 출력결과
[1,3,5]
[ reduce() 작동원리 ]
from functools import reduce
ls = [1, 2, 3, 4, 5]
print(reduce(lambda x, y: x+y, ls))
# 출력결과
15
728x90
반응형
'Study > FastCampus' 카테고리의 다른 글
[python] map(), filter(), reduce() 구현 (0) | 2021.05.17 |
---|---|
[python] Decolator - ① (0) | 2021.05.06 |
[python] 함수 default 파라미터 (0) | 2021.05.03 |
[python] 컴프리핸션(comprehension) 속도 비교 (0) | 2021.05.03 |
[python] 구구단 프로그램(for문) (0) | 2021.05.03 |