[Python] 데이터 타입(집합, Set)

·2024년 4월 30일
0

Python

목록 보기
8/8
post-thumbnail

집합(Set)

1. 개념

  • 집합의 원소들을 표현하며, 중복값을 허용하지 않음.
  • 인덱싱/슬라이싱 사용 할 수 없음,
  • 수정 가능한 데이터 타입
  • 활용 예시: 집합의 이름 = {요소1, 요소2, 요소3...}

2. 특징

  • 중복을 허용하지 않음.
  • 순서가 없다(Unordered).
  • 교집합, 합집합, 차집합

교집합&합집합&차집합

x = {1, 2, 3, 4, 5}
y = {3, 4, 5, 6, 7}
  • 교집합

  • ‘&’를 이용하면 교집합을 간단히 구할 수 있다.
>>> x & y
{3, 4, 5}
  • intersection 함수를 사용해도 합집합을 구할 수 있다.
>>> x.intersection(y)
{3, 4, 5}
  • 합집합

  • ‘ | ’를 사용하면 합집합을 구할 수 있음.
>>> x | y
{1, 2, 3, 4, 5, 6, 7}
  • union 함수 사용
>>> x.union(y)
{1, 2, 3, 4, 5, 6, 7}
  • 차집합

  • 빼기(-)를 사용하면 차집합을 구할 수 있음.
>>> x | y
{1, 2}
>>> y - x
{6, 7}
  • difference 함수 사용
>>> x.difference(y)
{1, 2}
>>> y.difference(x)
{6, 7}
  • 대칭차집합

    : 합집합에서 교칩합 부분을 뺀 나머지 부분
  • ( ^ ) 를 이용
>>> print(x ^ y)  
#(x | y) - (x & y), (x - y) | (y - x) 의 값과 동일
{1, 2, 6, 7}
  • symmetric_difference 함수 이용
>>> print(x.symmetric_difference(y))
>>> print(y.symmetric_difference(x))
{1, 2, 6, 7}
{1, 2, 6, 7}

집합 함수

add 함수

  • 값 1개 추가하기
  • 이미 만들어진 set 자료형에 값을 추가
>>> x.add(10)
>>> print(x)
{1, 2, 3, 4, 5, 10}

update 함수

  • 여러 개의 값을 한꺼번에 추가(update)
>>> x.update([11, 12, 13])
>>> print(x)
{1, 2, 3, 4, 5, 10, 11, 12, 13}

remove 함수

  • 특정 값을 제거
>>> x.remove(13)
>>> print(x)
{1, 2, 3, 4, 5, 10, 11, 12}

실습 링크

https://colab.research.google.com/drive/1LcQCpkhIpWUzq6vYkda7sWgS-pri4JEx?usp=sharing

profile
열심히 하는 나를 위한 기록

0개의 댓글