시작
filter()
함수는 파이썬에서 이터러블을 필터링하는 데 사용되는 매우 유용한 함수입니다. 이 함수를 사용하면 주어진 조건에 따라 이터러블의 요소를 선택적으로 유지하거나 제거할 수 있습니다. 이 기사에서는 filter()
함수의 사용법과 그 활용에 대해 자세히 알아보겠습니다.
1. 기본적인 사용법
filter() 함수는 두 개의 인자를 받습니다. 첫 번째 인자는 조건을 검사하는 함수이고, 두 번째 인자는 필터링할 이터러블입니다. 첫 번째 인자를 통해 전달된 함수는 True 또는 False를 반환하는 조건식으로 작성되어야 합니다. filter() 함수는 조건식이 True를 반환하는 요소만 유지하고, 나머지 요소는 제거한 새로운 이터러블을 반환합니다.
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# 짝수만 유지하고 홀수는 제거
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers) # [2, 4, 6, 8, 10]
위의 예제에서는 numbers 리스트에서 짝수만 필터링하여 even_numbers 리스트에 저장합니다. filter() 함수의 첫 번째 인자로는 lambda 함수를 사용하여 간단한 조건식을 작성했습니다. 람다 함수는 주어진 숫자가 2로 나누어 떨어지는지 확인하고, 나머지가 0이면 True를 반환합니다.
2. None 함수 사용하기
filter() 함수의 첫 번째 인자로는 None을 사용할 수도 있습니다. 이 경우, filter() 함수는 이터러블에서 값이 True로 평가되는 요소만 반환합니다.
names = ['Alice', '', 'Bob', '', 'Charlie']
# 값이 True로 평가되는 요소만 유지
valid_names = list(filter(None, names))
print(valid_names) # ['Alice', 'Bob', 'Charlie']
위의 예제에서는 names 리스트에서 빈 문자열을 제거하고 유효한 이름만 유지하는 방법을 보여줍니다. filter() 함수의 첫 번째 인자로 None을 전달하면 빈 문자열은 False로 평가되므로 제거됩니다.
끝
filter() 함수는 파이썬에서 이터러블을 필터링하는 가장 간단하고 효율적인 방법 중 하나입니다. 이 함수를 사용하면 조건에 따라 이터러블의 요소를 선택적으로 유지하거나 제거할 수 있습니다. filter() 함수는 람다 함수나 None을 사용하여 다양한 조건을 적용할 수 있으며, 새로운 필터링된 이터러블을 반환합니다.
filter() 함수는 코드를 간결하게 유지하고 가독성을 높이는 데 도움이 됩니다. 이 함수를 사용하여 데이터를 필터링하고 원하는 요소만 추출하는 방법을 익히면 파이썬에서 작업을 더욱 효율적으로 수행할 수 있습니다.
이 글은 python 프로그래밍과 ChatGPT를 통해 자동으로 업로드 된 글입니다.
티스토리 블로그에 자동으로 글 업로드 하는 방법을 배우고 싶다면?
개발자 상담, 스타트업 기술 자문, 비즈니스 문의는?
위 링크를 참고하세요!
'Developer > Hustle Coding' 카테고리의 다른 글
파이썬의 'sorted()' 함수: 정렬을 위한 완벽한 도구 (0) | 2023.10.05 |
---|---|
파이썬의 itertools 모듈: 이터레이터 조합을 위한 강력한 도구 (0) | 2023.10.04 |
파이썬의 'zip()' 함수: 여러 개의 이터러블을 병렬로 처리하기 (0) | 2023.09.13 |
enumerate() 함수: 파이썬 루프의 향상된 기능 (0) | 2023.09.12 |
파이썬의 'map()' 함수: 데이터 변환의 최적화된 도구 (0) | 2023.09.11 |