반응형
이 자습서에서는 내장 Python filter() 함수를 사용하여 목록 요소를 필터링하는 방법을 배웁니다.
1. Python filter() 함수 소개
경우에 따라 목록의 요소를 반복하고 지정된 기준에 따라 그 중 일부를 선택해야 합니다.
다음과 같은 점수 목록이 있다고 가정합니다.
scores = [70, 60, 80, 90, 50]
각 요소가 70보다 크거나 같은 점수 목록에서 모든 요소를 가져오려면 다음 코드를 사용합니다.
scores = [70, 60, 80, 90, 50]
filtered = []
for score in scores:
if score >= 70:
filtered.append(score)
print(filtered)
How it works.
- 먼저 점수 목록의 요소를 포함할 빈 목록(필터링됨)을 정의합니다.
- 둘째, 점수 목록의 요소를 반복합니다. 요소가 70보다 크거나 같으면 필터링된 목록에 추가합니다.
- 셋째, 필터링된 목록을 화면에 보여줍니다.
파이썬에는 필터()라는 내장 함수가 있어 List(또는 Tuple)을 더 멋진 방식으로 필터링할 수 있습니다.
다음은 filter() 함수의 구문을 보여줍니다.
filter(fn, list)
filter() 함수는 목록의 요소를 반복하고 fn() 함수를 각 요소에 적용합니다. fn()이 True를 반환하는 요소에 대한 반복자를 반환합니다.
실제로 filter() 함수의 두 번째 인수에는 목록뿐만 아니라 모든 이터러블을 전달할 수 있습니다.
다음은 filter() 함수를 사용하여 각 점수가 70보다 크거나 같은 점수 목록을 반환하는 방법을 보여줍니다.
scores = [70, 60, 80, 90, 50]
filtered = filter(lambda score: score >= 70, scores)
print(list(filtered))
Output:
[70, 80, 90]
filter() 함수는 반복자를 반환하므로 for 루프를 사용하여 반복할 수 있습니다. 또는 list() 함수를 사용하여 반복자를 목록으로 변환할 수 있습니다.
2. Python filter() 함수를 사용하여 튜플 목록 필터링 예제
다음과 같은 튜플 목록이 있다고 가정합니다.
countries = [
['China', 1394015977],
['United States', 329877505],
['India', 1326093247],
['Indonesia', 267026366],
['Bangladesh', 162650853],
['Pakistan', 233500636],
['Nigeria', 214028302],
['Brazil', 21171597],
['Russia', 141722205],
['Mexico', 128649565]
]
목록의 각 요소는 국가 이름과 인구를 포함하는 튜플입니다.
인구가 3억 명 이상인 모든 국가를 가져오려면 다음과 같이 filter() 함수를 사용할 수 있습니다.
countries = [
['China', 1394015977],
['United States', 329877505],
['India', 1326093247],
['Indonesia', 267026366],
['Bangladesh', 162650853],
['Pakistan', 233500636],
['Nigeria', 214028302],
['Brazil', 21171597],
['Russia', 141722205],
['Mexico', 128649565]
]
populated = filter(lambda c: c[1] > 300000000, countries)
print(list(populated))
Output:
[['China', 1394015977], ['India', 1326093247], ['United States', 329877505]]
3. Summary
- Python filter() 함수를 사용하여 목록(또는 튜플)을 필터링합니다.
refreance:https://www.pythontutorial.net/python-basics/python-filter-list/
728x90
반응형
'Programing > Python' 카테고리의 다른 글
Python List Comprehensions: 파이썬 List 이해하기 (0) | 2023.03.09 |
---|---|
Python Reduce() 사용 방법? (0) | 2023.03.08 |
Python map() 함수 사용하여 List 요소를 변경하는 방법? (0) | 2023.03.08 |
Python Iterables(반복자) 사용방법?? (0) | 2023.03.07 |
Python List에서 요소와 인덱스를 찾는 방법?? (0) | 2023.03.07 |
댓글