python 개념정리

[파이썬] 딕셔너리(dictionary)

dev_눕개 2021. 8. 31. 01:56

딕셔너리(dictionary)

파이썬에서 딕셔너리(dictionary)란 사전형 데이터를 의미하며, key와 value를 1대1로 대응시킨 형태.

이때 하나의 key에는 하나의 value만이 대응된다.

사전에서 단어를 찾으면 그에 대한 해설이 있는 것을 상상하면 쉽게 이해할 수 있다.

 

이 때, key 값은 절대로 변하지 않으며 value 값은 변경할 수 있다.

튜플(전 게시글 참고)과 다르게 key-value 쌍 자체를 수정하거나 삭제할 수 있기 때문에 유용하게 사용할 수 있다.

 

예제

dic = {1 : "My" , 2:"Name", 3:"Is", 4:"Python"}

 

print(dic[1])

print(dic[2])

print(dic[3])

print(dic[4])  

 

실행 결과

My

Name

Is

Python

 

위의 예제는 정수형 값을 key 값으로 하여 그에 대응하는 value 값으로 문자열을 저장한 형태다.

파이썬에서 딕셔너리의 key 값은 정수형을 포함한 어떠한 자료형도 가능하다.

 

특정 key 값에 해당하는 value 값에 접근하려면, 딕셔너리명[key값]의 형태로 사용한다.

단, 하나의 딕셔너리에 같은 key 값이 동시에 저장될 수는 없다.


딕셔너리 내부 함수

파이썬에서 딕셔너리는 유용하게 사용할 수 있는 특정 함수들을 기본적으로 포함하고 있다.

 

예제

dic = {1 : "My" , 2:"Name", 3:"Is", 4:"Python"}

 

print(dic.keys())

print(0 in dic.keys())

print(dic.values())

print(dic.items())

 

실행 결과

dict_keys([1, 2, 3, 4])
False
dict_values(['My', 'Name', 'Is', 'Python'])
dict_Items([(1, 'My'), (2, 'Name'), (3, 'Is'), (4, 'Python')])

 

keys() 함수는 해당 사전형 데이터에 저장된 key 값들을 리스트의 형태로 반환한다.

해당 사전형 데이터에 무슨 key 값들이 포함되어 있는지 모를 때 유용하게 사용할 수 있다.

in 키워드를 사용하면 해당 리스트에 특정 값이 포함되어 있는지 여부를 알 수 있다.

해당 리스트의 특정 값이 존재할 경우에는 True를 반환하며, 존재하지 않을 경우에는 False를 반환한다.

 

values() 함수는 해당 사전형 데이터에 저장된 모든 value 값들을 리스트의 형태로 반환한다.

items() 함수는 해당 사전형 데이터에 저장된 모든 key-value 쌍을 리스트의 형태로 반환한다.