반응형
파이썬 집합 내포
― 중복 제거, 조건 필터링을 한 줄로!
집합(set)은 중복을 허용하지 않고, 빠른 검색이 가능합니다.
이런 특징을 내포 표현식과 결합하면 짧고 효율적인 코드를 만들 수 있습니다.
1. 기본 문법
{표현식 for 변수 in 반복가능한객체}
2. 예제 1: 중복 제거
nums = [1, 2, 2, 3, 4, 4, 5]
unique = {n for n in nums}
3. 예제 2: 짝수 필터링
evens = {n for n in range(10) if n % 2 == 0}
4. 예제 3: 문자열에서 모음 추출
text = "Hello Python Set Comprehension"
vowels = {ch.lower() for ch in text if ch.lower() in 'aeiou'}
5. 예제 4: 튜플 조건 필터링
pairs = [(x, y) for x in range(3) for y in range(3)]
unique_products = {x * y for (x, y) in pairs if x != y}
6. 예제 5: 단어 길이 필터링
words = ['a', 'apple', 'bee', 'cherry', 'dog', 'elephant']
long_words = {w for w in words if len(w) >= 4}
✅ 정리
기능 | 예시 |
---|---|
중복 제거 | {x for x in list} |
조건 필터링 | {x for x in list if 조건} |
문자열 필터링 | {c for c in str if c in 'aeiou'} |
다차원 자료 처리 | {x*y for x, y in pairs} |
📌 다음 글 예고
리스트, 딕셔너리, 집합 내포를 종합해 중첩 리스트 내포와 다차원 데이터 처리로 확장해 보겠습니다.
'십대를 위한 코딩 > 십대를 위한 파이썬' 카테고리의 다른 글
파이썬 리스트 내포 × enumerate × zip × lambda― 현실 문제를 한 줄로 해결하는 고급 조합 (1) | 2025.05.18 |
---|---|
중첩 리스트 내포― 다차원 데이터를 한 줄로 다루는 파이썬의 마법 (0) | 2025.05.17 |
파이썬 딕셔너리 내포― 한 줄로 만드는 똑똑한 데이터 매핑 (2) | 2025.05.15 |
리스트 내포로 2차원 리스트 만들기 (1) | 2025.05.14 |
파이썬 리스트 내포에서 if 조건문 쓰는 법 (1) | 2025.05.13 |