집합 자료형
Programming/Python 2013. 3. 7. 00:28 |set과 frozenset 이라는 집합 내장 자료형이 새롭게 도입되었다. 집합 연산에 필요한 다양한 연산을 수행할 수 있다. set과 frozenset 자료형은 변경 불가능한 값들을 저장하는 순서가 없는 집합적 자료형이다.
set 자료형은 변경 가능 자료형
frozenset 자료형은 변경 불가능 자료형. 즉, frozenset 은 자신을 변경시키는 연산을 수행할 수 없다.
set 과 frozenset 공통적으로 적용될 수 있는 연산들
연산 | 동등한 표현 |
내 용 |
len(s) |
|
원소의 수 |
x in s |
|
멤버쉽 테스트 |
x not in s |
|
멤버쉽 테스트 |
s.issubset(t) |
s <= t |
s가 t의 부분 집합인가 |
s.superset(t) |
s >= t |
포함 집합인가 |
s.union(t) |
s | t |
새로운 s와 t의 합집합 |
s.intersection(t) |
s & t |
교집합 |
s.difference(t) |
s - t |
차집합 |
s.symmetric_difference(t) |
s ^ t |
배타집합 |
s.copy() |
| 집합 s를 얕은 복사 |
set 자료형에만 적용 가능한 연산들
연 산 |
동등한 표현 |
내 용 |
s.update(t) |
s |= t |
s와 t의 합집합을 s에 저장 |
s.intersection_update(t) |
s &= t |
s와 t의 교집합을 s에 저장 |
s.difference_update(t) |
s -= t |
s와 t의 차집합을 s에 저장 |
s.symmetric_difference_update(t) |
s ^= t |
s와 t의 배타집합을 s에 저장 |
s.add(x) |
|
원소 x를 s에 추가 |
s.remove(x) |
|
원소 x를 s에서 제거. 없으면 keyError 예외 발생 |
s.discard(x) |
|
원소 x가 있다면 s에서 제거 |
s.pop() |
|
s에서 임의의 원소를 하나 리턴하고 집합에서는 제거. 빈 집합이면 예외 발생 |
s.clear() |
|
집합 s의 모든 원소 제거 |
'Programming > Python' 카테고리의 다른 글
파일 객체 속성들 (0) | 2013.03.11 |
---|---|
객체의 복사 및 형 변환 (0) | 2013.03.08 |
사전 자료형을 이용한 전화번호부 프로그램 (0) | 2013.03.06 |
사전 (Dictionary) (0) | 2013.03.06 |
Python 스크립트를 실행파일(exe) 로 만들기 (0) | 2013.02.25 |