Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- Class
- instruction
- while
- for
- react
- Linux
- computer
- javascript
- function
- DS
- mysql
- system
- DoM
- Java
- MacOS
- DB
- python
- html
- DATAPATH
- architecture
- web
- data structure
- Pipelining
- github
- MIPS
- XML
- control
- CSS
- php
- Algorithm
Archives
- Today
- Total
YYYEJI
[Python] 집합(Set) 정리 본문
728x90

집합(Set)은
순서가 없고, 집합안에 특별한 원소를 가집니다.
Mutable 객체입니다.
아래와 같이 사용합니다.
s = {'A', 'B', 'C'}
print(type(s))

특별한 원소를 가진다고 했던 것처럼 중복된 값은 자동으로 삭제됩니다.
s = {'A', 'B', 'C', 'a', 'A'}
print(s)

Set은 순서가 없기 때문에 어떤 원소가 먼저 나올지는 모릅니다.



↑↑↑ 여러 번 실행했을 때 나오는 결과가 다르다는 것을 확인할 수 있습니다 ↑↑↑
원소가 튜플 안에 존재하는지도 확인할 수 있습니다.
s = {'A', 'B', 'C', 'a', 'A'}
print('A' in s)

s = {'A', 'B', 'C', 'a', 'A'}
print('D' in s)

'add' method - 하나의 원소 추가
s = {'A', 'B', 'C', 'a', 'A'}
s.add('D')
print(s)

'update' method - 여러 개의 원소 추가
s = {'A', 'B', 'C', 'B'}
s.update(['D', 'A', 'E', 'F'])
print(s)

'remove' method - 원소 삭제
s = {'A', 'B', 'C', 'a', 'A'}
s.add('D')
s.remove('a')
print(s)

'copy' method - 튜플 복사
s = {'A', 'B', 'C', 'B'}
sc = s.copy()
print(sc)

' | ' operation - 합집합
s1 = {'A', 'B', 'C', 'D'}
s2 = {'A', 'E'}
print(s1|s2)

' & ' operation - 교집합
s1 = {'A', 'B', 'C', 'D'}
s2 = {'A', 'E'}
print(s1&s2)

' - ' operation - 차집합
s1 = {'A', 'B', 'C', 'D'}
s2 = {'A', 'E'}
print(s1-s2)

' ^ ' operation - 대칭차집합 (합집합 - 교집합)
s1 = {'A', 'B', 'C', 'D'}
s2 = {'A', 'E'}
print(s1^s2)

'union' method - 합집합
s1 = {'A', 'B', 'C', 'D'}
s2 = {'A', 'E'}
s3 = s1.union(s2)
print(s3)

'intersection' method - 교집합
s1 = {'A', 'B', 'C', 'D'}
s2 = {'A', 'E'}
s3 = s1.intersection(s2)
print(s3)

'difference' method - 차집합
s1 = {'A', 'B', 'C', 'D'}
s2 = {'A', 'E'}
s3 = s1.difference(s2)
print(s3)

'symmetric_difference' method - 대칭차집합 (합집합 - 교집합)
s1 = {'A', 'B', 'C', 'D'}
s2 = {'A', 'E'}
s3 = s1.symmetric_difference(s2)
print(s3)

'issubset' method - 부분집합 여부 확인
s1 = {'A', 'B', 'C', 'D'}
s2 = {'A'}
print(s2.issubset(s1))
print(s1.issubset(s2))

'issuperset' method - issubset과 반대 superset인지 확인
s1 = {'A', 'B', 'C', 'D'}
s2 = {'A'}
print(s1.issuperset(s2))
print(s2.issuperset(s1))

'isdisjoint' method - 교집합이 없으면 True, 있으면 False
s1 = {'A', 'B', 'C', 'D'}
s2 = {'E','F'}
print(s1.isdisjoint(s2))

◡̈
'Python' 카테고리의 다른 글
[Python] sum 함수 알아보기 (0) | 2022.10.13 |
---|---|
[Python] 딕셔너리(Dictionary) 정리 (0) | 2022.10.06 |
[Python] 튜플(Tuple) 정리 (0) | 2022.10.06 |
[Python] for문과 while문의 차이점 (2) | 2022.09.29 |
[Python] 반복문 (while문) (0) | 2022.09.29 |