컴공생 누르지 마세요! 컴공생 울어요.
[Python 문법 공부] 01. 자료형 - 집합 자료형 본문
집합 자료형
- 리스트 or 문자열을 이용해서 만들 수 있음
- 다음과 같은 특징 존재
- 중복을 허용하지 않음
- 순서가 없음
- 사전 자료형과 집합 자료형은 순서가 없기 때문에 인덱싱 불가
- 특정 원소가 존재하는지 검사하는 연산의 시간 복잡도는 O(1)
- '특정한 데이터가 이미 등장한 적이 있는지 여부'를 체크할 때 효과적
집합 자료형의 초기화
- set() 함수 이용
- 중괄호 {} 안에 각 원소를 콤마 , 를 기준으로 구분해서 넣음
data = set([1, 1, 2, 3, 4, 4, 5])
print(data)
# 결과: {1, 2, 3, 4, 5}
data = {1, 1, 2, 3, 4, 4, 5}
print(data)
# 결과: {1, 2, 3, 4, 5}
집합 자료형의 연산
- 합집합: |
- 교집합: &
- 차집합: -
a = set([1, 2, 3, 4, 5])
b = set([3, 4, 5, 6, 7])
print(a | b)
# 결과: {1, 2, 3, 4, 5, 6, 7}
print(a & b)
# 결과: {3, 4, 5}
print(a - b)
# 결과: {1, 2}
집합 자료형 관련 함수
- add()
- 집합에 하나의 값 추가
- O(1) 시간 복잡도
- update()
- 집합에 여러 개의 값을 한 번에 추가
- remove()
- 집합에서 특정한 값을 제거
- O(1) 시간 복잡도
data = set([1, 2, 3])
data.add(4)
print(data)
# 결과: {1, 2, 3, 4}
data.update([5, 6])
print(data)
# 결과: {1, 2, 3, 4, 5, 6}
data.remove(3)
print(data)
# 결과: {1, 2, 4, 5, 6}
'STUDY > Python' 카테고리의 다른 글
[Python 문법 공부] 03. 입출력 (0) | 2023.03.06 |
---|---|
[Python 문법 공부] 02. 함수 (0) | 2023.03.06 |
[Python 문법 공부] 01. 자료형 - 사전 자료형 (0) | 2023.03.02 |
[Python 문법 공부] 01. 자료형 - 튜플 자료형 (0) | 2023.03.02 |
[Python 문법 공부] 01. 자료형 - 문자열 자료형 (0) | 2023.03.02 |
Comments