하다보니

집합 본문

프로그래밍 언어/Python

집합

claire 2021. 12. 27. 15:38

1. 다음과 같은 형태로 집합을 표현한다. 

  s1=set({1,2,3})

  s2=set([1,2,3])

  s3={1,2,3}

  s4=set()

2. 집합의 특징

  • set()키워드 혹은 중괄호를 사용한다. 빈 중괄호({})는 빈 딕셔너리를 말하는 것이니 주의하자. 
  • 고유한 값을 가진다. 값 중복 불가. 
  • mutable(값이 변하는)객체이다. 
  • 순서가 없기 때문에 인덱싱이 불가하다.

3. 집합 연산

  • 교집합 : s1.intersection(s2) 또는 &
  • 합집합 : s1.union(s2) 또는 |
  • 차집합 : s1.difference(s2) 또는 s1-s2
  • 집합이 같은지 ==로 판별
  • 집합이 아예 다른지 s1.isdisjoint(s2) =>교집합이 없다. 

4. 원소 추가, 삭제

  • 원하는 값 추가 : 집합.add()  ex)s.add(4)
  • 집합의 값을 한번에 여러개 추가 : 집합.update()  ex)s.update([1,2,3])
  • 특정 요소 제거(set 내부에 지우려는 값이 존재하지 않으면 오류 발생) : 집합.remove()  ex)s.remove("kim")
  • 오류없이 안전하게 제거(값이 존재하지 않으면 아무일도 일어나지 않음) : 집합.discard()  ex)s.discart("lee")
  • 임의의 요소를 반환 후 제거 : 집합.pop()  ex)s.pop()

'프로그래밍 언어 > Python' 카테고리의 다른 글

[Python] 파이썬 리스트 모든 조합 구하기  (0) 2022.04.22
아스키코드  (0) 2022.02.09
deque  (0) 2022.02.08
2차원 리스트 원소 포함 여부  (0) 2021.12.27
[python]클래스  (0) 2021.12.27