Coding/Python

[python] 집합 ( set ) 자료형 이란? / 집합 구하기 / 관련 함수 ( add, update, remove )

dodomp0114 2021. 11. 21. 15:37
집합 자료형 ( set )

- 집합에 관련된 것을 쉽게 처리하기 위해 만든 자료형.

 

 

 

집합 자료형 ( set ) 의 특징

 

  • 중복을 허락 하지 않음.
  • 리스트나 튜플과 다르게 순서가 없음. ( 인덱싱으로 값 추출 불가능 )
  • set( )  괄호 안에 리스트나 문자열을 입력하여 만들 수 있음.

 

ex)

#########################
## 집합 ( set )  자료형 ##
#########################

## set( ) 괄호 안에 리스트 입력 ##
>>> S = set([1,2,2,3,3,3,4,4,4,4,5,5,5,5,5])
>>> print(S)

## set( ) 괄호 안에 문자열 입력 ##
>>> S = set("HELLLLOOOOO")
>>> print (S)
{'L', 'O', 'H', 'E'}

 

 


 

 

 

집합 구하기

 

  • 교집합
  • 합집합
  • 차집합

 

 

 

 

교집합

- 교집합이란, 두개의 집합에서 공통된 부분을 추출하는 것을 뜻합니다.

   "&" 기호를 사용하여 교집합을 구해줍니다.

 

  ※ intersection ( ) 함수를 사용해도 같은 결과값이 나온다.

 

################################
## "&" 기호를 사용하여 교집합 구하기 ##
################################

>>> A = set([1,2,3,4,5,6,7])
>>> B = set([5,6,7,8,9,10])
>>> A & B
{5, 6, 7}

 

############################################
## intersection( ) 함수를 사용하여 교집합 구하기 ##
############################################

>>> A = set([1,2,3,4,5,6,7])
>>> B = set([5,6,7,8,9,10])
>>> A.intersection(B)
{5, 6, 7}

 

 

 

합집합

- 합집합이란 두개의 집합을 합친 것을 뜻합니다.

   "|" 기호를 사용하여 합집합을 구합니다.

 

  ※ union ( ) 함수를 사용해도 같은 결과값이 나온다.

 

#################################
## "|" 기호를 사용하여 합집합 구하기. ##
#################################

>>> A = set([1,2,3])
>>> B = set([4,5,6])
>>> A | B
{1, 2, 3, 4, 5, 6}

 

#####################################
## union( ) 함수를 사용하여 합집합 구하기 ##
#####################################

>>> A = ([1,2,3])
>>> B = ([4,5,6])
>>> A.union(B)
{1, 2, 3, 4, 5, 6}

 

 

 

차집합

- 차집합이란 두개의 집합 중 공통된 부분을 제외하고 나머지 부분을 구하는 것을 뜻합니다.

   "-" 기호를 사용하여 합집합을 구합니다.

 

  ※ difference ( ) 함수를 사용해도 같은 결과값이 나온다.

 

################################
## "-" 기호를 사용하여 차집합 구하기 ##
################################

>>> A = [1,2,3,4,5,6,7]
>>> B = [5,6,7,8,9,10]
>>> A - B
{1, 2, 3, 4}
>>> B - A
{8, 9, 10}

 

#######################################
## difference 함수를 사용하여 차집합 구하기 ##
#######################################

>>> A = [1,2,3,4,5,6,7]
>>> B = [5,6,7,8,9,10]
>>> A.difference(B)
{1, 2, 3, 4}
>>> B.difference(A)
{8, 9, 10}

 

 

 

 


 

 

 

집합 관련 함수
  • add
  • update
  • remove

 

add ()

-  집합에 데이터 1개 추가하기.

    

 

ex)

#######################################
## add 함수를 이용하여 집합에 데이터 1개 추가 ##
#######################################

>>> A = set([1,2,3])
>>> A.add(4)
>>> A
{1, 2, 3, 4}

 

update ()

-  집합에 여러개의 데이터 한꺼번에 추가하기.

    다른 하나의 집합을 또 하나의 집합에 편입시키기.  

    

    

ex)

#######################################
## add 함수를 이용하여 집합에 데이터 1개 추가 ##
#######################################

>>> A = set([1,2,3])
>>> A.update([4,5,6])
>>> A
{1, 2, 3, 4, 5, 6}

 

###############################
## 집합을 또 다른 집합에 편입시키기 ##
###############################

>>> A = ([1,2,3])
>>> B = ([4,5,6])
>>> A.update(B)
(1, 2, 3, 4, 5, 6)

 

 

 

remove ()

-  집합에서 특정 데이터 제거하기.

    

 

ex)

#######################################
## add 함수를 이용하여 집합에 데이터 1개 추가 ##
#######################################

>>> A = set([1,2,3])
>>> A.remove(3)
>>> A
{1, 2}