CH 11 Data Collection

Huisu·2021년 12월 1일
0

Python

목록 보기
11/17
post-thumbnail

Sets

Set Type

  • 요소들의 집합
  • 요소들끼리 순서 없음
    • index 존재하지 않음
  • 요소들끼리 서로 중복되지 않음
    • 같은 값을 입력해도 중복값을 알아서 거른 후 저장

Define

  • set(): empty set 생성하는 함수
    • set_variable = {} 로 생성 불가능
  • set(a): 인자 a를 갖는 set 생성
    • parameter는 반드시 하나만 전달
    • parameter가 list일 경우 list의 요소로 이루어진 set 형성
    • parameter에 list, set, range, tuple 넣기 가능
    • parameter로 range를 넣을 경우 정렬되지 않고 무작위로 삽입
  • set_variable = {a, b, c, ...}: {}안 값들을 요소로 갖는 set 형성

Method

  • S.add(v): v값을 set S에 삽입
  • S.clear(): set S에 있는 모든 아이템 삭제
  • S.difference(other): set S에서 set other와 공통된 요소를 제거한 set 반환
  • S.intersection(other): set S와 set other의 교집합 set 반환
  • S.issubset(other): set S가 set other의 부분 집합인지 boolean 값 반환
  • S.isupperset(other): set S가 set otehr의 상위 집합인지 boolean 값 반환
  • S.remove(v): set S에서 item v 삭제
  • S.symmetric_difference(other): set S와 set other의 요소 중 서로 겹치지 않는 요소들로만 이루어진 set 반환
  • S.union(other): set S와 set other의 합집합 set 반환

Operator

  • S - other: set S에서 set other와 공통된 요소를 제거한 set 반환
  • S & other: set S와 set other의 교집합 set 반환
  • S <= other: set S가 set other의 부분 집합인지 boolean 값 반환
  • S >= other: set S가 set otehr의 상위 집합인지 boolean 값 반환
  • S | other: set S와 set other의 합집합 set 반환
  • S ^ other: set S와 set other의 요소 중 서로 겹치지 않는 요소들로만 이루어진 set 반환

Tuples

Tuple Type

  • 요소들의 집합
  • 순서가 존재해 index 접근 가능
  • immutable해 index별로 수정 불가능
    • tuple안에 들어가는 요소들이 mutable한 경우 해당 요소만 수정 가능
    • ex) list로 이루어진 tuple의 경우 tuple의 첫 번째 요소 list의 첫 번째 item 수정
  • 소괄호 ()를 사용해 정의
  • ()은 empty tuple
  • item이 하나만 존재할 경우 (x,)로 정의
    • (x)는 tuple이 아님
  • item이 여러 개 존재할 경우 , 로만 구분해 줘도 tuple로 인식
  • multiple assingment에 사용
  • 편리한 swap

Dictionaries

Dictionary Type

  • 지도 역할
  • key와 value 두 개가 쌍을 이뤄 하나의 entry
    • key는 immutable
    • value는 mutable
  • 순서가 없음
  • key를 inex처럼 사용
  • 중괄호 {}를 이용해 사용
  • 하나의 entry는 key:value로 입력
  • {}는 empty dictionary

Updating and Looping

  • del dictionary_variable[key] 로 entry 하나를 삭제 가능
  • x in dictionary_variable: dinctionary의 key 중에 a가 있는지 검색하고 value에 대해서는 검색하지 않음
  • for x in dictionary_variable: dictionary의 key에 대해서만 iteration 수행
    + dictionary는 순서가 없어서 for 문을 실행했을 때 iteration의 순서 모름

Method

  • D.clear(): Dictionary의 모든 entry 제거
  • D.get(k): k라는 key와 연결된 value 값 반환
  • D.get(k, v): k라는 key와 연결된 value 값을 반환하며 연결된 값이 없을 때는 v 값 반환
  • D.keys(): 모든 key 값을 dictionary_keys라는 새로운 data type으로 반환
  • D.values(): 모든 value 값을 dictionary_values라는 새로운 data type으로 반환
  • D.items(): (key, value)로 이루어진 set을 요소로 갖는 divtionary_items라는 새로운 data type으로 반환
  • D.pop(k): k라는 key 값에 연결된 value를 반환하고 해당 entry 삭제
  • D.pop(k, v): k라는 key 값에 연결된 value 값을, 연결된 값이 없을 경우 v를 반환하고 해당 entry 삭제
  • D.update(other): other Dictionary의 key가 D에 있을 경우 other의 value 값으로 덮어 쓰고, 없을 경우 other의 entry 추가

Inverting Dictionary

  • key 값을 value로, value 값을 key로 바꾸는 것
  • key는 unique하지만 value는 중복된 경우도 있음
  • 여러 개의 key가 하나의 value 값을 가진다면, 해당 key들을 list로 만들어서 value 값으로 invert

0개의 댓글

Powered by GraphCDN, the GraphQL CDN