본문 바로가기
Programming/- Python

[Python] Dictionary (딕셔너리) 정리

by 완벽주의탈피 2022. 11. 2.

딕셔너리 사용을 위한 기본 정리

 

 


 

Dictionary 선언


  • Hash 기반의 키(key)와 값(value)로 이루어진 자료형
  • {}로 선언 및 초기화
  • 가변(mutable) 데이터 타입
  • key : 고유한 값, immutable 데이터만 가능 (리스트 X)
  • value : 어떠한 타입의 데이터가 와도 됨

 

# Dictionry 선언

mydict1 = {}
mydict2 = dict()
mydict3 = {'k':1, 'r':2, 'a':1}

 

 

데이터 추가/업데이트


  • dict[key] = value

 

# Dictionary Update

mydict = {}
mydict['k'] = 1
mydict['k'] = 2

 

 

데이터 삭제


  • del dict[key]

 

# Dictionary Delete

mydict = {'k':1}
del mydict['k']

 

 

데이터 접근


  • dict[key]로 접근 : 키가 존재하지 않는다면 오류 발생
  • dict.get(key)로 접근 : 키가 존재하지 않는다면 None 반환
  • dict.get(key, default) : 키가 존재하지 않는다면 default 값 반환

 

# Dictionary 접근

dict = {'k':1, 'r':2}

print(dict['k'])	# 1
print(dict['a'])	# KeyError

print(dict.get('a'))	# None
print(dict.get('a', 1))	# 1

 

 

데이터 조회


  • dict.keys() : key 값을 dict_keys 객체로 반환
  • dict.values() : value 값을 dict_values 객체로 반환
  • dict.items() : key, value의 튜플을 dict_items 객체로 반환

 

# Dictionary 반환

mydict = {'k':1, 'r':2, 'a':1}

mykey = list(mydict.keys())	# ['k', 'r', 'a']
myvalue = list(mydict.values())	# [1, 2, 1]
myitem = list(mydict.items())	# [('k', 1), ('r', 2), ('a', 1)]

 

 

초기화


  • dict.clear()
  • 모든 요소를 삭제

 

# Dictionary 초기화

mydict = {'k':1}
mydict.clear()	# {}

 

 

병합


  • dict.update(dict)
  • 하나의 딕셔너리에 다른 딕셔너리의 데이터 반영하여 병합

 

# Dictionary Update

mydict1 = {'k':1, 'r':2}
mydict2 = {'k':2, 'a':1}

mydict1.update(mydict2)	# mydict1 = {'k':2, 'r':2, 'a':1}

 

댓글