집합은 요소(item)들의 모임이다.
집합 자료형의 중요한 특징 두 가지가 있다.
- 중복을 허용하지 않는다
한 집합 안에 같은 값이 두 개 이상 있을 필요가 없다. 만약 같은 값이 있다면 하나만 남는다.
- 순서가 없다
먼저 나온 요소이든 나중에 나온 요소이든 그냥 집합 안의 요소일뿐이다. 리스트, 튜플과 달리 순서가 없기 때문에 인덱싱을 통해서 요소값을 불러오는 것이 불가능하다.
6.1 집합 자료형 만들기
- {} 안에 요소 삽입
집합은 순서가 없는 자료형이므로 s2라는 집합에 a, b, c라는 요소가 일정한 순서 없이 저장된 것을 볼 수 있다.
- set() 괄호 안에 리스트 형태로 요소 삽입
- set() 괄호 안에 문자열 삽입
set() 괄호 안에 리스트 없이는 문자열만 삽입가능하다.
이런 방식으로 집합을 만들면 문자열 안의 각 문자들이 하나의 원소로서 저장된다.
만약 어떤 단어를 집합에 넣고 싶다면, 그때는 1번 또는 2번의 방법을 활용하자.
s3을 보면, p가 두 번 입력되었지만 집합은 중복을 허용하지 않기에 p가 하나만 남은 것을 알 수 있다.
- set() : 빈 집합 만들기
{} 로는 빈 집합이 아닌 빈 딕셔너리가 만들어진다.
6.2 집합 요소 값 얻기
- 리스트나 튜플로 변환 후 인덱싱하기
리스트나 튜플로 변환 후 인덱싱 할 때 주의할 점은 집합은 순서가 없기에 내가 입력한 순서대로 리스트나 튜플에 저장되는 것이 아니라는 점이다. 따라서 내가 추출하고자 하는 요소값이 어떤 자리에 위치해있는지 확인한 후에 인덱싱한다.
- for 반복문을 이용하여 집합의 모든 요소값 얻기
6.3 집합 연산(교집합/합집합/차집합/대칭차집합)
- 교집합(& 기호 또는 intersection 함수 사용)
- 합집합( | 기호 또는 union 함수 사용)
| 기호는 키보드 우측에 엔터 키 위의 \ 표시와 같은 자판에 있는데 shift 키를 함께 눌러 사용해주면 된다.
- 차집합(빼기- 기호 또는 difference 함수 사용)
- 대칭차집합(^ 기호 또는 symmetric_difference 함수 사용)
* 대칭차집합은 두 집합 중 한 집합에는 속하는데 두 집합 모두에는 속하지 않는 원소들의 모임이다.
--------내장함수--------
6.4 집합에 값 추가하기
- add : 값 1개 추가
-update : 여러 개의 값을 한 번에 추가
update() 괄호 안에 {} 기호를 사용해서 추가할 수도, 리스트 형태로 추가할수도, 문자열 안에 추가할 수도 있다.
다만, 문자열의 경우 각 문자를 하나의 요소로 처리하게 되니, 여러 개의 문자들을 각각 추가하고 싶을 때 사용하면 된다.
6.5 집합에서 값 삭제하기
- remove : 특정 값 제거
remove는 삭제하려고 인수로 넣은 값이 집합 내에 존재하지 않으면 오류를 발생시킨다.
- discard : 특정 값 제거
discard는 삭제하고자 한 요소가 집합에 없다면 집합에 아무런 변화도 일어나지 않고, 오류도 발생하지 않는다.
- clear : 모든 값 삭제, 빈 집합으로 만들기
9. 파이썬 자료형 - 딕셔너리(2) : 딕셔너리 내장함수 (0) | 2022.03.24 |
---|---|
8. 파이썬 자료형 - 딕셔너리(1) : 쌍 추가/삭제, Key를 통해 Value 얻기, 중복된 key (0) | 2022.03.24 |
7. 파이썬 자료형 - 튜플 : 리스트와 다른 점, 인덱싱/슬라이싱/연산 (0) | 2022.03.21 |
6. 파이썬 자료형 - 리스트(2) : 리스트 내장함수 (0) | 2022.03.18 |
5. 파이썬 자료형 - 리스트(1) : 리스트 만들기, 인덱싱, 슬라이싱, 연산, 수정과 삭제 (0) | 2022.03.18 |
댓글 영역