파이썬의 filter() 함수는 iterable 객체에서 지정된 함수를 이용하여 원소를 걸러내는 함수입니다.
filter() 함수는 두 개의 인자를 받습니다. 첫 번째 인자는 필터링 함수이고, 두 번째 인자는 필터링 함수를 적용할 iterable 객체입니다. 필터링 함수는 인자로 iterable의 각 원소를 받으며, True 또는 False 값을 반환합니다. 반환값이 True인 원소만 남기고 필터링을 수행합니다.
1. 예제
예를 들어, 아래와 같은 리스트가 있습니다.
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
이 리스트에서 짝수만 남기고 싶으면 다음과 같이 filter() 함수를 사용할 수 있습니다.
def is_even(num):
return num % 2 == 0
filtered = filter(is_even, numbers)
위 코드에서 is_even() 함수는 짝수인 경우 True를 반환합니다. filter() 함수는 is_even() 함수를 numbers 리스트의 각 원소에 적용하여 반환값이 True인 원소만 포함하는 새로운 이터러블 객체를 반환합니다. 따라서 filtered 객체는 [2, 4, 6, 8]과 같은 결과를 가집니다.
filter() 함수는 람다 함수를 사용하여 한 줄로 작성할 수도 있습니다.
filtered = filter(lambda num: num % 2 == 0, numbers)
filter() 함수는 새로운 이터러블 객체를 반환하므로, 결과를 리스트나 튜플 등으로 변환하여 사용할 수 있습니다.
even_numbers = list(filter(lambda num: num % 2 == 0, numbers))
위 코드는 numbers 리스트에서 짝수만 남긴 후, 그 결과를 리스트로 변환하여 even_numbers 변수에 할당합니다. even_numbers 변수는 [2, 4, 6, 8]과 같은 결과를 가집니다.
'라이브러리' 카테고리의 다른 글
[파이썬] range() 함수 예제코드와 사용법 (0) | 2024.11.21 |
---|---|
[Python] backoff 재시도 모듈 사용법 (0) | 2023.04.04 |
[Python] reduce() 함수 사용법 (0) | 2023.03.20 |
[파이썬] Counter 모듈 사용법 (0) | 2023.03.20 |
[파이썬] Static method, Class method 에 대해서 (0) | 2023.03.20 |