파이썬 집합 자료형: 연산자 및 함수
파이썬의 집합(set) 자료형은 중복된 값을 허용하지 않고 순서가 없습니다. 이러한 특성 때문에 집합 자료형은 교집합, 합집합, 차집합과 같은 집합 연산을 수행하는 데 유용합니다. 이 글에서는 파이썬 집합 자료형의 연산자와 함수들에 대해 알아보겠습니다.
교집합, 합집합, 차집합 구하기
파이썬 집합 자료형은 교집합, 합집합, 차집합을 구하는 연산자와 함수를 제공합니다. 이를 사용하면 간단한 코드로 집합 연산을 수행할 수 있습니다.
예시
s1 = {1, 2, 3}
s2 = {2, 3, 4}
# 교집합
intersection = s1 & s2
print(intersection) # 출력: {2, 3}
# 교집합 함수 사용
print(s1.intersection(s2)) # 출력: {2, 3}
# 합집합
union = s1 | s2
print(union) # 출력: {1, 2, 3, 4}
# 합집합 함수 사용
print(s1.union(s2)) # 출력: {1, 2, 3, 4}
# 차집합
difference = s1 - s2
print(difference) # 출력: {1}
# 차집합 함수 사용
print(s1.difference(s2)) # 출력: {1}
실행 결과

집합 자료형 관련 함수
파이썬 집합 자료형은 원소를 추가하거나 삭제하는 등의 작업을 수행하는 다양한 함수를 제공합니다. 이 함수들을 사용하면 집합 자료형을 더 쉽게 다룰 수 있습니다.
1. add(): 원소 추가
add() 함수는 집합에 원소를 추가합니다. 집합 자료형은 중복된 값을 허용하지 않기 때문에 이미 존재하는 원소를 추가하려고 하면 아무런 변화가 없습니다.
예시
s = {1, 2, 3}
s.add(4)
print(s) # 출력: {1, 2, 3, 4}
s.add(1)
print(s) # 출력: {1, 2, 3, 4}
2. update(): 여러 원소 추가
update() 함수는 여러 원소를 한 번에 집합에 추가합니다. 인자로는 리스트, 튜플, 집합 등의 반복 가능한(iterable) 자료형을 사용할 수 있습니다.
예시
s = {1, 2, 3}
s.update([4, 5, 6])
print(s) # 출력: {1, 2, 3, 4, 5, 6}
s.update((7, 8, 9))
print(s) # 출력: {1, 2, 3, 4, 5, 6, 7, 8, 9}
3. remove(): 원소 삭제
remove() 함수는 집합에서 원소를 삭제합니다. 삭제하려는 원소가 집합에 없으면 KeyError가 발생합니다.
예시
s = {1, 2, 3}
s.remove(1)
print(s) # 출력: {2, 3}
s.remove(4) # KeyError 발생
실행 결과

4. discard(): 원소 삭제
discard() 함수는 집합에서 원소를 삭제합니다. remove() 함수와 다르게, 삭제하려는 원소가 집합에 없어도 에러가 발생하지 않습니다.
예시
s = {1, 2, 3}
s.discard(1)
print(s) # 출력: {2, 3}
s.discard(4)
print(s) # 출력: {2, 3}
실행 결과

5. clear(): 집합 비우기
clear() 함수는 집합의 모든 원소를 삭제하고 빈 집합으로 만듭니다.
예시
s = {1, 2, 3}
s.clear()
print(s) # 출력: set()
실행 결과

참고 자료
- 파이썬 공식 문서: 집합 자료형 (https://docs.python.org/3/library/stdtypes.html#set-types-set-frozenset)
함께 보면 좋은 이전 게시글
- 파이썬 집합 자료형: 생성 방법 및 특징
- 파이썬 리스트 연산: 리스트 간의 덧셈, 곱셈 및 수정, 삭제
- 파이썬 딕셔너리의 주요 함수: keys, values, items, clear, get, in
- 파이썬에서 데이터 타입 변환하기: int(), float(), str() 함수 사용법
- 파이썬 리스트 관련 함수들: 내장 함수를 활용한 리스트 관리
이 글이 도움이 되셨다면 공유를 부탁 드립니다. 다음 글에서 뵙겠습니다!