순서X | 중복X | 삽입O | 삭제O
1. 선언
a = set() => set() type(a):<class 'set'>
b = set([1,2,3,4]) => {1, 2, 3, 4} type(b):<class 'set'>
c = set([10,30,40,20,30]) => {40, 10, 20, 30} type(c):<class 'set'> ## 순서, 중복(40)없음
d ={ 1,2,3,4,5,1,2,3,4,5} => {1, 2, 3, 4, 5} type(d):<class 'set'>
2. 형변환
b : {1, 2, 3, 4} type(b):<class 'set'> ## 중괄호 set
t = tuple(b) => (1, 2, 3, 4) type(t):<class 'tuple'> ## 괄호 tuple
l = list(b) => [1, 2, 3, 4] type(l):<class 'list'> ## 대괄호 list
3. 추가 삭제
1) 추가
d.add(100) => {1, 2, 3, 4, 5, 100}
d.add(1) => {1, 2, 3, 4, 5, 100} ## 중복값추가안됨
2) 삭제
d.remove(100) => {1, 2, 3, 4, 5}
d.remove(999) =>KeyError: 999 ## 존재하지 않는 값 삭제시 에러
4. set함수
s1 = set([20,30,40,80,70,60]) => {70, 40, 80, 20, 60, 30}
s2 = {20,30,100,1000,1000} => {1000, 100, 20, 30}
1) 교집합
s1.intersection(s2) => {20, 30}
s1 & s2 => {20, 30}
2) 합집합
s1.union(s2) => {100, 70, 40, 1000, 80, 20, 60, 30}
s1 | s2 => {100, 70, 40, 1000, 80, 20, 60, 30}
3) 차집합
s1.difference(s2) => {40, 80, 60, 70}
s1 - s2 => {40, 80, 60, 70}
5.연산 불가
s1+s2 => TypeError: unsupported operand type(s) for +: 'set' and 'set'
s1 *3 => TypeError: unsupported operand type(s) for *: 'set' and 'int'
6.인덱싱 불가
s1[0] => TypeError: 'set' object is not subscriptable
7.슬라이싱 불가
s1[0:2] => TypeError: 'set' object is not subscriptable
'프로그래밍 > 파이썬' 카테고리의 다른 글
[파이썬] 함수 (0) | 2021.06.16 |
---|---|
[파이썬] 딕셔너리 (Dict) (0) | 2021.06.15 |
[파이썬] 튜플 (Tuple) (0) | 2021.06.15 |
[파이썬] 리스트 List (0) | 2021.06.15 |
[파이썬] 가상환경 설정 및 패키지 설치 (0) | 2021.06.14 |