본문 바로가기
성장하기/Python

filter

by 솔로 슈퍼스타 2023. 6. 14.
728x90

filter 함수는 주어진 함수를 이용하여 iterable에서 조건을 만족하는 요소들로 구성된 새로운 iterable을 생성하는 파이썬 내장 함수입니다.

filter 함수는 두 개의 인자를 받습니다. 첫 번째 인자로는 조건을 판단하는 함수(혹은 None)를, 두 번째 인자로는 조건을 검사할 iterable을 전달합니다. filter 함수는 iterable의 각 요소에 대해 조건 함수를 호출하고, 조건 함수가 참(True)을 반환하는 요소만 필터링하여 새로운 iterable을 반환합니다.

일반적으로 filter 함수는 람다 함수와 함께 사용됩니다. 람다 함수는 간단한 익명 함수를 만들 수 있는 방법으로, filter 함수와 함께 사용하기에 편리합니다.

아래는 filter 함수의 사용 예시입니다:

# 리스트에서 홀수만 필터링하여 새로운 리스트 생성
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
filtered_numbers = list(filter(lambda x: x % 2 != 0, numbers))
print(filtered_numbers)  # 출력: [1, 3, 5, 7, 9]

# 문자열에서 소문자만 필터링하여 새로운 문자열 생성
string = "Hello, World!"
filtered_string = ''.join(filter(lambda x: x.islower(), string))
print(filtered_string)  # 출력: elloorld

위의 예시에서 첫 번째 경우는 리스트에서 홀수만 필터링하여 새로운 리스트를 생성하고, 두 번째 경우는 문자열에서 소문자만 필터링하여 새로운 문자열을 생성합니다. filter 함수는 주어진 조건 함수에 의해 참(True)을 반환하는 요소들로 이루어진 iterable을 생성하여 결과를 반환합니다.

'성장하기 > Python' 카테고리의 다른 글

PriorityQueue  (0) 2023.06.14
heapq  (0) 2023.06.14
any  (0) 2023.06.14
append() 와 extend() 의 차이  (0) 2023.06.14
deque  (0) 2023.06.14