Set   집합

(2023-11-03)

1. 파이썬집합 (Set)

  ㅇ 例) s = {1,2,3}  또는  s = set([1,2,3])

  ㅇ 순서가 없으나, 중복을 허용 않는 값들의 모음(컬렉션)

  ㅇ [참고] ☞ 자바스크립트Set 객체 참조


2. 특징Mutable 객체 (가변 객체) 임
     - 단, 그 내부 원소는 mutable한 값은 가질수 없음

  ㅇ 인덱싱, 슬라이싱 연산 불가능
     - 순서있는 시퀸스 타입인 리스트,튜플,딕셔너리와는 달리, 
     - 특정 원소 참조를 위한, 인덱싱 [] 제공 안함
        . (인덱싱 연산 이란?  [0],[1],... 등 인덱스에 의해 개별 원소를 참조하는 것)
     - 범위 원소 참조를 위한, 슬라이싱 [:] 제공 안함
        . 슬라이싱 연산 : [ : ] (시작,끝을 정하여 범위 참조)

  ㅇ 중복 허용 안함

  ㅇ 해시 테이블을 사용하여 구현됨
     - 따라서, 시간 복잡도 O(1) 로써, 개별 원소에 빠른 엑세스 가능


3. 연산, 메소드멤버쉽 연산자 (in, not in) : 특정 원소 유무 확인
     - 例) s = {1,2,3}; 2 in s => True, 5 in s => False, 5 not in s => True

  ㅇ 크기 (Cardinality : 원소 개수) : len({'a','b','c'}) => 3

  ㅇ 합산 (Summation) : sum({1,2,3}) => 6, sum({1,2,3},4) => 10

  ㅇ 제공 메서드
     - 리스트와 거의 유사하나, 
        . 원소 추가 : s = {1,2}; s.add(3) => {1,2,3} 
        . 원소 삭제 : s = {1,2,3}; s.remove(2) => {1,3} 
        . 원소 갱신 : s = {1,3}; s.update({3,5}) => {1,3,5}
     - 이외에도, 교집합 intersect(),합집합 union(), 차집합 difference() 등이 추가됨
        . 합집합 : {1,2,3} | {2,3,4} => {1,2,3,4}
        . 교집합 : {1,2,3} & {2,3,4} => {2,3}

파이썬 자료형
   1. 파이썬 자료형   2. 숫자형   3. 문자열   4. 리스트   5. 사전   6. 집합   7. 튜플  


Copyrightⓒ written by 차재복 (Cha Jae Bok)
"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"