본문 바로가기

Python

[Python3] 집합 관련 정리

반응형

집합 만들기

집합 예시
s1 = set([1, 2, 3])
print(s1)

s2 = set("Hello")
print(s2)

집합 자료형의 특징
  • 중복을 허용하지 않는다.
  • 순서가 없다.

리스트나 튜플은 순서가 있기 때문에 인덱싱을 통해 자료형의 값을 얻을 수 있지만 set 자료형은 순서가 없기 때문에 인덱싱으로 값을 얻을 수 없다. 만약, set 자료형에 저장된 값을 인덱싱으로 접근하려면 다음과 같이 리스트나 튜플로 변환 후에 처리해야 한다. => 중복을 허용하지 않는 set의 특징으로 인해 자료형의 중복을 제거하기 위한 필터 역할로 사용되기도 한다.

s = set([1, 2, 3])
l = list(s)
print(l)
print(l[0])

t = tuple(s)
print(t)
print(t[0])

 

교집합, 합집합, 차집합

s1 = set([1, 2, 3, 4, 5, 6])
s2 = set([4, 5, 6, 7, 8, 9])

# 교집합
print('##########교집합#########')
print(s1 & s2)
print(s1.intersection(s2))
print('\n')

# 합집합
print('#########합집합#########')
print(s1 | s2)
print(s1.union(s2))
print('\n')

# 차집합
print('########차집합#########')
print(s1 - s2)
print(s2 - s1)
print(s1.difference(s2))
print(s2.difference(s1))
print('\n')

 

집합 관련 함수

값 추가(add, update)
# 값 1개 추가
print('########## 값 1개 추가 #########')
s1 = set([1, 2, 3])
s1.add(4)
print(s1)
print('\n')

# 값 여러 개 추가
print('########## 값 여러 개 추가 ###########')
s2 = set([4, 5, 6])
s2.update([1, 2, 3])
print(s2)
print('\n')

# 특정 값 제거하기
print('########## 값 제거 ##########')
s1.remove(2)
print(s1)

 

 


반응형

'Python' 카테고리의 다른 글

[Python3] 함수 관련 정리  (0) 2020.03.15
[Python3] 제어문 관련 정리  (0) 2020.03.13
[Python3] 제어문 관련 정리  (0) 2020.03.12
[Python3] Dictionary 관련 정리  (0) 2020.03.11
[Python3] List 관련 정리  (0) 2020.03.11