반응형
250x250
Notice
Recent Posts
Recent Comments
Link
이롭게 현명하게
[Python] 파이썬 집합 자료형 본문
728x90
반응형
목차
집합 자료형이란?
교집합
합집합
차집합
집합 관련 함수
<정리>
코드 | 설명 |
집합명 = 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}
잘못된 정보는 댓글에 남겨주시면 감사하겠습니다!😊
댓글과 좋아요는 큰 힘이 됩니다!
더보기
[ 참고자료 ]
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