filter 함수
- 이터러블의 각 요소에 대해 function이 참인 것만 반환하는 함수이다.
filter(function, iterable)
ex = [1, 2, 3, 4, 5]
list(filter(lambda x : x%2 == 0, ex))
[2, 4]
예제1) 리스트 컴프리헨션으로 30까지 리스트 만들어주시고 3의배수만 필터로 걸러내주세요..
list(filter(lambda x: x % 3 == 0, [i for i in range(1, 31)]))
[3, 6, 9, 12, 15, 18, 21, 24, 27, 30]
예제2) filter 함수로 참임 것만 반환하는 함수를 만들어보자.
x2 = [True, False, True, True, False]
list(filter(None, x2)) # 참인 것만 반환하는 함수
[True, True, True]
reduce 함수
- reduce는 반복 가능한 객체의 각 요소를 지정된 함수로 처리한 뒤 이전 결과와 누적해서 반환한다.
- reduce는 파이썬 3부터 내장 함수가 아니다.
- functools 모듈에서 reduce 함수를 가져와야 한다.
reduce(function, iterable, initializer=None)
from functools import reduce
# reduce(function, iterable, initializer=None)
reduce(lambda x, y :x+y, [1,2,3,4,5])
reduce(lambda x, y :x+y, [1,2,3,4,5], 35)
50
reduce 함수는 초기값도 설정할 수 있다. 아래와 같이 35+1+2+3+4+5=50이 나온다.
'플레이데이터 빅데이터 부트캠프 12기 > Python' 카테고리의 다른 글
[플레이데이터 빅데이터 부트캠프]Python list vs ndarray (0) | 2022.07.19 |
---|---|
[플레이데이터 빅데이터 부트캠프]Python Enumerate & Zip (0) | 2022.07.17 |
[플레이데이터 빅데이터 부트캠프]Python 익명함수 vs map함수 (0) | 2022.07.17 |
[플레이데이터 빅데이터 부트캠프]Python List Comprehension (0) | 2022.07.17 |
[플레이데이터 빅데이터 부트캠프]Python 예외처리 (0) | 2022.07.17 |