[Python] 자료형 - 집합(Set)
Python에서 set 자료형은 순서가 없고, 중복되지 않는 요소들의 집합을 나타내는 객체입니다. set 객체는 집합 연산(union, intersection, difference, symmetric difference)을 지원하며, 관련된 함수들(add, remove, discard, clear, pop, ...)를 지원합니다.
- set 객체는 순서를 가지지 않으며, 인덱싱, 슬라이싱 기능을 지원하지 않음
- set 객체는 수학적 집합의 특성을 가지며, 중복된 요소를 가질 수 없음
- set은 변경 가능(mutable) 객체
- set 객체는 요소들의 순서가 없기 때문에, 특정 요소가 있는지 확인하는 것은 O(1) 의 시간 복잡도
# set 생성
s = set([1, 2, 3, 4, 5])
print(s) # {1, 2, 3, 4, 5}
# set 추가
s.add(6)
print(s) # {1, 2, 3, 4, 5, 6}
# set 제거
s.remove(6)
print(s) # {1, 2, 3, 4, 5}
# set 요소 포함 여부 확인
print(3 in s) # True
또한, set 객체는 {}로도 생성 가능합니다.
s = {1, 2, 3}
print(s) # {1, 2, 3}
set 자료형을 list로 변환하려면 list() 함수를 사용합니다. list() 함수는 입력된 객체를 list 자료형으로 변환하여 Return합니다.
s = {1, 2, 3, 4, 5}
lst = list(s)
print(lst) # [1, 2, 3, 4, 5]
- list() 함수로 변환된 리스트는 원본 set 객체와 다른 메모리 공간을 사용
- set 객체를 list로 변환하면 set의 순서를 유지하는 것이 아니라 순서가 보장되지 않음
- 만약 set의 순서를 유지하고 싶다면 python 3.6 이상에서는 dict_keys, dict_values, dict_items를 이용하여 순서를 유지하면서 변환 가능
반응형
'Tech & Development > Programming Languages' 카테고리의 다른 글
[Python] 문자열에서 특정문자 제거 (0) | 2023.01.19 |
---|---|
[Python] 자료형 - 리스트 (List) (0) | 2023.01.18 |
[Python] 텍스트 파일에 내용 추가 (0) | 2023.01.18 |
[Python] File 끝 확인 (0) | 2023.01.18 |
[Python] File 수정, 생성 시간 확인하기 (0) | 2023.01.18 |
댓글
이 글 공유하기
다른 글
-
[Python] 문자열에서 특정문자 제거
[Python] 문자열에서 특정문자 제거
2023.01.19 -
[Python] 자료형 - 리스트 (List)
[Python] 자료형 - 리스트 (List)
2023.01.18 -
[Python] 텍스트 파일에 내용 추가
[Python] 텍스트 파일에 내용 추가
2023.01.18 -
[Python] File 끝 확인
[Python] File 끝 확인
2023.01.18