'set'은 Python의 내장 자료형 중 하나로, 중복된 값을 가지지 않는 순서가 없는 컬렉션입니다. 'set'은 수학적 집합에 대한 주요 연산을 제공하며, 아래와 같은 특징을 갖습니다.
set의 특징
1. 중복을 허용하지 않습니다.
• 'set'에 동일한 값이 여러 번 추가되더라도 한 번만 저장됩니다.
2. 순서가 없습니다.
• 인덱스나 키를 사용하여 값에 접근할 수 없습니다. 대신 값 자체를 사용하여 항목을 확인하거나 제거할 수 있습니다.
3. 가변형(mutable)입니다.
• 즉, 'set'에 항목을 추가하거나 제거할 수 있지만, 'set'에 포함된 개별 항목 자체는 불변형(immutable)이어야 합니다. 예를 들어, 리스트는 'set'의 항목이 될 수 없습니다.
주요 연산 및 메서드
• union(), |: 두 집합의 합집합을 반환합니다.
• intersection(), &: 두 집합의 교집합을 반환합니다.
• difference(), -: 첫 번째 집합에서 두 번째 집합의 요소를 제거한 결과를 반환합니다.
• symmetric_difference(), ^: 두 집합의 고유한 요소만을 반환합니다.
• add(): 집합에 요소를 추가합니다.
• remove(): 집합에서 특정 요소를 제거합니다. 해당 요소가 집합에 없으면 오류를 발생시킵니다.
• discard(): 집합에서 특정 요소를 제거합니다. 해당 요소가 집합에 없어도 오류를 발생시키지 않습니다.
• clear(): 모든 요소를 제거하여 빈 집합을 만듭니다.
• issubset(): 다른 집합이 현재 집합의 부분집합인지 확인합니다.
• issuperset(): 현재 집합이 다른 집합의 상위집합인지 확인합니다.
# set 생성
s = set([1, 2, 3, 4, 5, 2, 3]) # {1, 2, 3, 4, 5}
s2 = {3, 4, 5, 6, 7}
# 연산
print(s & s2) # {3, 4, 5}
print(s | s2) # {1, 2, 3, 4, 5, 6, 7}
print(s - s2) # {1, 2}
# 요소 추가 및 제거
s.add(10) # {1, 2, 3, 4, 5, 10}
s.remove(2) # {1, 3, 4, 5, 10}
'Python > 05 파이썬 심화' 카테고리의 다른 글
iterable (0) | 2023.09.07 |
---|---|
sort() sorted() (0) | 2023.09.07 |
math (0) | 2023.09.06 |
Counter (0) | 2023.09.06 |
str.maketrans() (0) | 2023.09.06 |