이것저것 기록

[python] 딕셔너리(dict) 기초 본문

코린이/코딩 기초 & 알고리즘 공부

[python] 딕셔너리(dict) 기초

anweh 2020. 10. 9. 21:38

 

 

우리가 아는 일반적인 사전에는 "people"이라는 단어에 "사람", "baseball"이라는 단어에 "야구"라는 뜻이 부합되듯이 파이썬 자료형 중 하나인 딕셔너리는 Key와 Value를 한 쌍으로 갖는 자료형이다.

딕셔너리 타입은 immutable한 키(key)와 mutable한 값(value)으로 맵핑되어 있는 순서가 없는 집합이다. 

 

 

 

 

1. 딕셔너리 생성

딕셔너리는 { } 중괄호 안에 key:value 형식으로 저장하며 각 key와 value는 콤마(,)로 구분해준다. 

person = {'Name': 'David', 'Sex': 'M', 'Age': 20, 'Height': 180, 'Job': 'Student'}

실행 결과

보다시피 인덱스가 없기 때문에 딕셔너리 내에선 key로 검색해야한다. 

key는 중복될 수 없지만 value는 중복되어도 괜찮고, key와 value 둘 다 string이든 int든 넣을 수 있다. 

또, 딕셔너리에는 자료형을 섞어서 사용해도 된다. 무슨 말이냐면 value에 리스트, 딕셔너리 등을 포함하여 모든 자료형을 사용할 수 있다는 뜻이다. (key에는 사용할 수 없음.)

다양한 타입의 자료를 쌍을 지어서 저장해야할 때 딕셔너리는 아주 유용하다. 

 

 

2. 딕셔너리의 Key에 Value 할당하기 

딕셔너리에서는 [ ] 로 key에 접근하여 value를 할당한다. 

딕셔너리[키] = 값 

person['Location'] = 'LA'

실행 결과

 

3. 두 개의 딕셔너리 비교하기 

person = {'Name': 'David', 'Sex': 'M', 'Age': 20, 'Height': 180, 'Job': 'Student'}
person['Location'] = 'LA'

another = {'Name': 'Jade', 'Sex': 'M', 'Age': 21, 'Height': 186, 'Job': 'Student', 'Location': 'LA'}

## COMPARE
for k in person:
    if k in another:
      if person[k] == another[k]:
         print(f"Key and value both matches: {k} (key)")

실행 결과

 

 

Comments