
Dictionary는 '사전'이라는 뜻을 지닌 단어로 파이썬에서 자주 사용되는 자료형입니다. 딕셔너리의 가장 큰 특징은 대응관계를 나타낼수 있다는 점입니다. 배열로도 구현할 수 있겠지만 Dictionary만의 특별한 기능들이 리스트와 튜플과는 다르게 사용되게 합니다. 그래서 오늘은 이 Dictionary의 사용법에 대해서 알아보겠습니다.
앞서 말했다시피 Dictionary는 대응관계로 Key와 Value가 한쌍으로 여러개의 쌍이 하나의 딕셔너리 안에 존재합니다.
{ Key1 : Value1, Key2 : Value2, Key3 : Value3, ..... }
위와 같이 Key:Value가 쌍으로 존재하고 ,로 구분됩니다. 딕셔너리의 이런 구조 덕분에 값을 찾을때 순서대로 찾을 필요가 없고 Key값만 검색하면 Value를 얻을 수 있습니다.
딕셔너리의 사용법을 하나씩 살펴보겠습니다.
딕셔너리를 정의 할때는 {}중괄호를 사용합니다.
dic1 = {'name' : "Jang", 'age' : 25}
# or
dic1 = dict(name="Jang",age="25")
dic1은 딕셔너리의 이름이고 Key는 name와age가 있으며 각각의 Value로 Jang과 25가 있습니다. 정의할때 위의 중괄호를 사용한 방식이 있고 아래의 dict()함수를 사용한 방식이 있습니다.
알아둬야할 점은 Value값은 변하는 값을 넣을 수 있지만 Key값 변하지 않는 값을 사용합니다.
한번 만들어진 딕셔너리를 수정해야하는 일이 발생할 것입니다. 먼저 추가하는 방법부터 보겠습니다.
dic1['Nation'] = "Korea"
dic1 # {'name' : "Jang", 'age' : 25, 'Nation' : "Korea"}
우와 같이 dic1['Nation'] = "Korea"을 입력하면 Key가 Nation이고 Value가 Korea인 쌍이 딕셔너리에 추가됩니다.
del dic1['age']
dic1 # {'name' : "Jang", 'Nation' : "Korea"}
del을 이용하여 딕셔너리의 요소를 삭제할 수 있습니다. []안에 삭제하고 싶은 Key값을 입력하면 됩니다.
이렇게 만들어진 딕셔너리에서 정보를 가져오는 것은 쉽습니다.딕셔너리명[Key] 형식으로 입력하면 바로 해당Key의 Value를 불러옵니다.
dic1['name'] # Jang
또한 특정 Key가 존재하는지 검색하는 방법도 있습니다.
'Nation' in dic1 # True
dic1 안에 Nation이 존재하면 True를 출력하고 아니면 False를 출력합니다.
.keys()함수는 딕셔너리의 Key들을 반환하는 함수입니다.
list(dic1.keys()) # ['name', 'Nation']
list() 함수로 묶우주면 list형식으로 key들을 반환해줍니다.
.values()함수는 위의 함수와 반대로 Value들을 반환하는 함수입니다. 사용법은 위의 .keys()함수와 동일합니다.
.items() 함수는 Key와 Value를 동시에 반환하는 함수입니다.
list(dic1.items()) # [('name', 'Jang'), ('Nation', 'Korea')]
.clear()은 이름에서 알 수 있듯이 딕셔너리를 초기화하는 함수입니다. .clear() 함수를 통해 비어있는 딕셔너리를 만들수 있습니다.
dic1.clear()
dic1 # {}