이롭게 현명하게

[Python] 파이썬 집합 자료형 본문

Python

[Python] 파이썬 집합 자료형

dev_y.h 2023. 3. 16. 18:14
728x90
반응형

※ 본 포스팅은 윈도우 11, Pycharm, Python3 환경에서 작성되었습니다.


 

목차

집합  자료형이란?

교집합

합집합

차집합

집합 관련 함수

 


<정리>

코드 설명
집합명 = set() 비어있는 집합 자료형
집합명 = set([값1,값2, ... ]) 집합 자료형
집합 A & 집합 B 집합 A 와 집합 B 의 교집합
집합 A.intersection(집합 B) 집합 A와 집합 B의 교집합
집합 A | 집합 B
집합 A와 집합 B의 합집합
집합 A.union(집합B) 집합 A와 집합 B의 합집합
집합 A - 집합 B
집합 A 와 집합 B의 차집합
집합 A.difference(집합B) 집합 A 와 집합 B의 차집합
집합명.add(값) 집합에 1개의 값만 추가 할 경우
집합명.update([값1,값2, ... ]) 집합에 여러개의 값을 한꺼번에 추가
집합명.remove(값) 집합에 특정 값을 제거

 


[집합  자료형이란?]

집합 자료형은 파이썬에서 시작한 자료형으로 집합에 관련된 것을 쉽게 처리하기 위해 만든 자료형이다.

<집합 자료형 특징>

  • 중복을 허용하지 않는다.
  • 순서가 없다.(Unordered)

집합 자료형은 중복을 허용하지 않는 특징 때문에 set은 자료형의 중복을 제거하기 위한 필터로 사용되기도 한다.

s = set([1,2,3])
s1 = set("hello")
s2 = set() # 비어있는 집합 자료형
print(s) # {1, 2, 3}
print(s1) # {'o', 'e', 'l', 'h'}

리스트나 튜플은 순서가 있기 때문에 인덱싱을 통해 자료형의 값을 얻지만 set자료형은 순서가 없기 때문에 인덱싱으로 값을 얻을 수 없다.

만약 set 자료형에 저장된 값을 인덱싱으로 접근하려면 리스트나 튜플로 변환 후 접근해야 한다.

s = set([1,2,3])
s1 = set("hello")

l1 = list(s)
l2 = list(s1)
print(l1[2]) # 3
print(l2[3]) # h

 


[교집합]

 "&" 기호를 사용하여 교집합을 간단하게 구할 수 있다.

intersection 함수를 사용해도 동일한 결과가 나타난다.

A = set([1,2,3,4,5,6])
B = set([4,5,6,7,8,9])

print(A&B) # {4, 5, 6}
print(A.intersection(B)) # {4, 5, 6}

[합집합]

 "|" 기호를 사용하여 합집합을 간단하게 구할 수 있다.

union 함수를 사용해도 동일한 결과가 나타난다.

A = set([1,2,3,4,5,6])
B = set([4,5,6,7,8,9])

print(A|B) # {1, 2, 3, 4, 5, 6, 7, 8, 9}
print(A.union(B)) # {1, 2, 3, 4, 5, 6, 7, 8, 9}

[차집합]

 "-" 기호를 사용하여 합집합을 간단하게 구할 수 있다.

difference 함수를 사용해도 동일한 결과가 나타난다.

A = set([1,2,3,4,5,6])
B = set([4,5,6,7,8,9])

print(A-B) # {1, 2, 3}
print(A.difference(B)) # {1, 2, 3}

[집합 관련 함수]

1. 값 1개 추가하기 (add)

이미 만들어진 set 자료형에 값을 추가할 수 있다.

1개의 값만 추가할 경우 add 함수를 사용한다.

A = set([1,2,3,4,5,6])
A.add(15)
print(A) # {1, 2, 3, 4, 5, 6, 15}

2. 값 여러 개 추가하기(update)

여러 개의 값을 한꺼번에 추가할 경우 update함수를 사용한다.

A = set([1,2,3,4,5,6])
A.update([30,20,44])
print(A) # {1, 2, 3, 4, 5, 6, 44, 20, 30}

3. 특정 값 제거하기(remove)

특정 값을 제거할 경우 remove 함수를 사용한다.

A = set([10,20,30,40,50,60])
A.remove(30)
print(A) # {40, 10, 50, 20, 60}

 

 

 

[Python] 파이썬 불 자료형

목차 불 자료형이란? 참과 거짓 불 연산 참(True) 거짓(False) "문자열" "" [1,2,3,4] [] (1,2,3,4) () {'a':1} {} 1 0 None bool(값) : bool연산의 결과로 참 거짓을 리턴 [불 자료형이란?] 불(bool) 자료형이란 참(True)와

devyihyun.tistory.com


잘못된 정보는 댓글에 남겨주시면 감사하겠습니다!😊

댓글과 좋아요는 큰 힘이 됩니다!

 

 

728x90
반응형

'Python' 카테고리의 다른 글

[Python] 파이썬 변수  (0) 2023.03.20
[Python] 파이썬 불 자료형  (0) 2023.03.17
[Python] 딕셔너리 관련 함수  (0) 2023.03.15
[Python] 파이썬 딕셔너리 자료형  (0) 2023.03.14
[Python] 파이썬 튜플  (0) 2023.03.13
Comments