just inside

[python] set (집합) 자료형 본문

LG U+ Why Not SW camp/python

[python] set (집합) 자료형

방울도마도 2024. 8. 1. 15:31
728x90
  • set은 수학의 집합
  • 순서가 없고, unique한 원소를 가짐
  • mutable 객체

set 선언

  • list나 dict는 대괄호, 중괄호로 바로 선언 가능하지만, set은 dict 타입과 동일한 중괄호를 사용하므로 바로 생성 불가능.
  • set 생성자를 이용하거나, 중괄호에 iterable한 객체를 넣어 생성.
>>> s = {}
>>> type(s)
<class 'dict'>
>>> s = set()
>>> type(s)
<class 'set'>
>>> s
set()
>>> s = set([1,3,5,7])
>>> s
{1, 3, 5, 7}
>>> p = {1, 3, 5, 7}
>>> p
{1, 3, 5, 7}
  • 중복값은 자동으로 중복 제거됨
  • 순서가 없음

  • in : set 안에 원소 포함되어 있는지 여부 확인
  • set.add(x) : x 원소 추가
  • set.update([여러값]) : 여러 데이터 한번에 추가
  • set.remove(x) : x 원소 제거하고, 없으면 KeyError 발생
  • set.discard(x) : x 원소 제거하고, 없어도 에러발생하지 않음

연산자

  • |  (union) : 합집합
  • & (intersection) : 교집합
  • - (difference) : 차집합
  • ^ (symmetic_difference) : 대칭차집합 (합집합 - 교집합)
  • |=, &=, -=, ^= : 연산과 동시에 할당.
  • a.issubset(b) : a가 b의 부분집합 여부 확인
  • a.issuperset(b) : a가 b의 superset인지 확인
  • a.isdisjoint(b) : 교집합이 없으면 True, 있으면 False
728x90

'LG U+ Why Not SW camp > python' 카테고리의 다른 글

[python] 문자열 함수 정리  (0) 2024.07.17
[python] 파일 읽고 쓰기  (0) 2024.07.12
[python] 딕셔너리 자료형  (0) 2024.07.10
[python] 문자열 포매팅  (0) 2024.07.09