Basic | Set 자료형

파이썬 자료구조 set에 대해 알아보자

집합 (set) 자료구조가 가지는 특징, 함수들은 뭐가 있을까

집합의 특징

  • 중복이 없다
  • 순서가 없다

집합 만들기

  • 딕셔너리와 똑같이 중괄호 {}로 표현
  • 딕셔너리와 다르게 key:value 형식이 없음, 원소만 나열
# 넷 다 같은 집합
set1 = {1, 3, 5}
set2 = set([1, 3, 5]) # set() 함수를 사용해 list to set 변환
set3 = set([5, 3, 1])
set3 = {3, 1, 3, 5} # 집합은 중복 원소 표시하지 않음 

집합 원소 추가/삭제


myset = {1, 2, 3, 4}

# 원소 추가
myset.add(5)

# 여러 개의 원소 한 번에 추가
myset.update([6, 7, 8])

# 원소 제거
myset.remove(5) # 존재하지 않는 원소를 삭제하려고 한다면 에러

# 원소 제거
myset.discard(10) # 존재하지 않는 원소라면 아무것도 하지 않음

집합 연산

  1. 교집합
  2. 합집합
  3. 차집합
  4. XOR (Exclusive or)
# 합집합
union = set1 | set2

# 교집합
intersection = set1 & set2

# 차집합
diff = set1 - set2

# xor
xor = set1^set2