딕셔너리(Dictionary)란

딕셔너리는 Key와 Value를 쌍으로 갖는 자료형.

리스트나 튜플처럼 순차적으로 해당 요소값을 구하지 않고 Key를 통해 Value를 얻음.

딕셔너리 작동 방법

딕셔너리를 파이썬에서 정의하는 방법

dic = {'name':pey','phone':'0119993323','birth':'1118','list1':[1,2,3]}

라는 방식으로 정의할 수 있으며, 위의 딕셔너리는 아래의 표 형태로 나타낼 수 있다.

딕셔너리의 Value에는 단순 string이나 int형 변수들 뿐 아니라 list형을 포함한 어떠한 자료형이든 추가가 가능하다

하지만, Key에는 immutable한 자료형들만 선언 가능하다.

따라서 tuple이나 dictionary는 key로 설정이 가능하나, list는 선언이 불가하다.

Key Value
name pey
phone 0119993323
birth 1118
list1 [1,2,3]

딕셔너리의 Key와 Value 사용방법

위의 dic 딕셔너리를 사용해 예시를 들겠다.

만약, name의 value값을 얻고 싶다면

dic['name']
>>>pey

으로 선언하면 value값인 pey를 return 받을 수 있다.

pey['hello']='english'

로 선언하면, pey는 마지막에 hello를 key값으로, english를 value값으로 가진 dictionary가 된다.

Key Value
name pey
phone 0119993323 
birth 1118
list1 [1,2,3]
hello english

 

del pey['name']

로 선언하면, pey는 name을 key값으로 가진 항목을 전부 지워버린 dictionary가 된다.

Key Value
phone 0119993323
birth 1118
list1 [1,2,3]
hello english

딕셔너리 함수들

dic = {'name':pey','phone':'0119993323','birth':'1118'}

 

dic.keys()

dictionary의 key값만을 모아서 dick_keys라는 객체를 리턴하는 함수

리스트를 return하는 것이 아님. 리스트로 변환을 위해선 list()함수 사용 필요

dic.keys()
>>>dict_keys(['name','phone','birth'])

dic.values()

dictionary의 value값만을 모아서 dick_values라는 객체를 리턴하는 함수

리스트를 return하는 것이 아님.

dic.values()
>>>dict_values(['pey','0119993323','1118'])

dic.items()

key와 value의 쌍을 튜플로 묶은 값을 dict_items객체를 리턴하는 함수

리스트를 return하는 것이 아님.

dic.items()
>>>dict_items([('name','pey'),('phone','0119993323'),('birth','1118')])

dic.get(x,"default value")

x라는 key에 대응하는 value를 리턴하는 함수

만약 x라는 key가 dictionary에 없다면 default value를 리턴한다.

default value를 비워두면 None을 리턴한다.

dic.get('name')
>>>'pey'
dic.get('phone')
>>>'0119993323'
dic.get('nokey')
=>오류 발생
dic.get('nokey','bar')
>>>'bar'

 

+ Recent posts