Programming Language/Python

[Python Programming 기초] # 컬렉션 타입의 이해 3 : Dictionary

Lucian_Cho 2020. 11. 18. 00:07

# 컬렉션 타입의 이해

 3. dictionary

  : 키(key)와 값(value)을 갖는 데이터 구조

    순서 존재 X → index 존재 X

    키를 알면 원소에 대한 접근 용이!

 

  ex) a = {'Korea' : 'Seoul', 'Canada' : 'Ottawa', 'USA' : 'Washington D.C'}

       b = {}

       print(a['Korea'])

       => Seoul

 

  ex) a = {'Korea' : 'Seoul', 'Canada' : 'Ottawa', 'USA' : 'Washington D.C'}

       a['Japan'] = 'Tokyo'

       => 키 벨류 추가됨!

 

  ex) b = {0:1, 1:6, 7:9, 8:10}

       print(b[0])

       => 1

 

  - 항목 변경 : 기존에 키가 존재하면, 새로운 값으로 업데이트

 

  - .update() : 두 딕셔너리의 병합, 겹치는 키는 Parameter로 전달되는 키값으로 overwrite

   ex) a = {'a' : 1, 'b' : 2}

        b = {'a' : 2, 'c' : 4}

        a.update(b)

        => {'a' : 2, 'b' : 2, 'c' : 4}

 

  - key 삭제 (del 키워드 or pop 함수)

   ex) a = {'a' : 1, 'b' : 2, 'c' : 3}

        a.pop('b')

        del a['b']  # 한 세션 내에서 지워버릴 수 있다

 

  - .clear() : 딕셔너리의 모든 값을 초기화

   => {} (빈 dict만 남음)

 

  - in 키워드 : key 값 존재 확인, T or F로 반환

   ※ dict의 경우 원소가 1억이든 더 많든 성능 저하가 없음

      but, list의 경우 원소 多 → 성능 저하...

 

  - value access

   dict[key]  키가 없는 경우 Error

   .get(key) → 키가 없는 경우 None 반환

 

  - 모든 keys, values에 접근

   ex) a = {'a' : 1, 'b' : 2, 'c' : 3}

   (1) .keys() : 키만 반환   ex) list(a.keys()) => ['a', 'b', 'c']

   (2) .values() : 값만 반환   ex) list(a.values()) => [1, 2, 3]

   (3) .items() : 키, 값의 튜플을 반환   ex) list(a.items()) => [('a', 1), ('b', 2), ('c', 3)]

 

 

본 포스팅은 Fast Campus 머신러닝과 데이터 분석 A-Z 강의를

듣고 정리한 내용을 담고 있습니다.