일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- Python
- 다항식회귀분석
- dictionary
- IFRS
- 리스트
- value
- Key
- 파이썬
- INDEX함수
- 자본
- index
- 다중회귀분석
- 난수배열
- 머신러닝
- jupyternotebook
- 코딩배우기
- 계속기업
- pop함수
- 기계분석
- 부채
- 리스트함수
- 인덱스
- 자산
- 파이썬강의
- 빅데이터
- 재무제표
- 파이썬독학
- 파이썬기초
- 딕셔너리
- 코딩
- Today
- Total
코인시던스의 기록
[#13 파이썬 기초] 세트(set)란? 세트 생성하는 법, 특징 / 파이썬에서 집합 연산은 어떻게 할까? 본문
안녕하세요. 오늘은 파이썬의 4 가지 컬렉션 중 세트(Set) 에 대해 알아보겠습니다.
수학에서의 집합과 동일한 개념으로 중복이 안되고 순서가 없는 데이터 구조입니다.
다른 컬렉션에 비해 쓰는 경우가 많지 않습니다.
1. 세트(Set) 생성, 초기화
- 세트(Set) 는 딕셔너리(dict) 의 키(key) 만 활용하는 데이터 구조로, 딕셔너리(dict) 와 마찬가지로 중괄호 {} 를 이용해 생성합니다.
※ 비어있는 세트 생성
하지만 빈 세트(Set) 를 생성할 때는 set() 함수를 이용합니다. a = {} 로 하면 비어있는 딕셔너리가 생성되기 때문이죠.
2. 세트(Set) 특징
(1) 중복으로 있는 항목을 모두 제거하고 출력
- a 라는 세트에 1 이 3 번, 3 이 2 번 있는데 모두 제거되고 출력되었죠?
indexing 이 안된다는 것은 순서가 없다는 거죠. 어떻게든 출력을 하기 위해서 순서가 있는것처럼 보이지만 사실상은 순서가 없습니다. 중복을 허용하지 않고 순서없는 구조를 갖고자 할 때 set 을 할 수 있습니다.
(2) 인덱스(Index) 없음
- 세트는 indexing 을 하려고 하니 오류가 발생합니다.
3. 세트(Set) 로 변환
set() 함수를 사용하여 리스트 등과 같이 다른 타입의 컬렉션에서 세트로 변환시킬 수 있습니다.
4. 세트 연산 (Set Operations)
수학에서의 집합 연산을 파이썬에서 어떻게 실행할까요? 수학 연산과 동일하게 교집합, 합집합, 차집합 등을 지원합니다.
(1) 합집합 : union()함수를 사용합니다.
(2) 교집합 : intersection() 함수를 사용합니다.
(3) 차집합 : difference() 함수를 사용합니다.
print(a.issubset(b)) # 부분집합이냐 아니냐
(4) 부분집합 : issubset() 함수를 사용합니다. 부분집합인지 아닌지에 대한 함수입니다.
집합 연산이 필요하게 되면 각각의 함수를 활용해서 원하는 결과를 얻으면 됩니다.
set 은 거의 사용할 일이 없긴하지만 dict 는 아주 많이 사용하기 때문에 dict 선언, 여러함수, key 변경하면서 연습 계속 해보세요.
'파이썬' 카테고리의 다른 글
numpy 사용 이유? numpy 배열 만들기, 난수 배열 만들기 (0) | 2021.01.27 |
---|---|
[#12 파이썬 기초] 딕셔너리(dictionary) 키/값 확인, 딕셔너리와 리스트 차이점, get()함수, keys()함수, values()함수, items()함수 (0) | 2020.10.21 |
[#11 파이썬 기초] 딕셔너리(dictionary)란? 딕셔너리에 key value 추가, 변경, 삭제 update 하는 방법 (0) | 2020.10.16 |
[#10 파이썬 기초] 튜플(Tuple) 생성하는 법, 튜플 사용하는 이유? (0) | 2020.10.14 |