본문 바로가기
Python

[Python][기초] 딕셔너리(Dictionary)

by codingbird1234 2025. 4. 24.

안녕하세요, codingbird입니다.

지난 시간까지 리스트(List)에 대해서 좀 더 자세히 알아보았습니다.

이번 시간에는 딕셔너리(Dictionary)에 대해서 알아보겠습니다.

 


1. 딕셔너리(Dictionary)란?

딕셔너리(Dictionary)란, 키(Key)값(Value)의 쌍으로 데이터들을 저장하는 자료형입니다.

이전에 리스트에서는 인덱스를 통해 각 요소에 접근하고 구분했습니다.

딕셔너리에서는 키(Key)를 통해 각 요소에 접근합니다. ( ex. "key1": "value1" )

딕셔너리에서 어떤 키에 접근해서 출력해보면, 해당 키에 대한 값(Value)이 출력됩니다.

또한 리스트는 대괄호([])로 표현하지만, 딕셔너리는 중괄호({})로 표현합니다.

아래 예시 코드를 통해 리스트와 딕셔너리를 비교해보세요

# 리스트(List)에서 데이터에 접근하는 방식
list1 = [ "apple", "banana", "camera" ]
print(list1[0], list1[1], list1[2])   # apple banana camera

# 딕셔너리(dictionary)에서 데이터에 접근하는 방식
dic1 = { "key1": "value1", "key2": "value2", "key3": "value3" }
print(dic1["key1"], dic1["key2"], dic1["key3"])   # value1 value2 value3

 

아래는 간단한 비교입니다.

  리스트(List) 딕셔너리(Dictionary)
표현 방식 대괄호([]) 중괄호({})
요소 접근 인덱스(Index) 키(Key)
접근 결과값 해당 인덱스의 저장된 데이터 해당 키에 대한 값(Value)

 


2. 딕셔너리에 대한 여러 가지 작업 (추가, 수정, 삭제 등)

딕셔너리에 대해서는, 아래와 같은 여러 가지 작업들이 가능합니다

작업 종류 코드 작성 방법 설명
접근 딕셔너리[키] 딕셔너리 a의 특정 키(Key)에 접근하면, 해당 키에 대한 값(Value)이 반환
수정/추가 딕셔너리[키] = 새로운 값 기존에 해당 키가 있다면, 해당 키에 대한 값을 새로운 값으로 수정
기존에 해당 키가 없다면, 해당 키-값 쌍을 생성하여 추가
삭제 del 딕셔너리[키] 해당 키에 대한 키-값 쌍을 삭제
존재 여부 키 in 딕셔너리 딕셔너리에 해당 키가 있는지 확인 (True 또는 False 반환)
모든 키 딕셔너리.keys() 해당 딕셔너리의 모든 키들을 반환
모든 값 딕셔너리.values() 해당 딕셔너리의 모든 값들을 반환
모든 키-값 쌍 딕셔너리.items() 해당 딕셔너리의 모든 키-값 쌍들을 반환
비우기 딕셔너리.clear() 해당 딕셔너리의 모든 데이터 삭제 (-> 빈 딕셔너리)

 

아래 코드를 통해 위 방법들을 확인해봅시다.

# 딕셔너리 person 생성 및 출력
person = { 
    "name": "codingbird", 
    "age": 25, 
    "phone": "010-1234-5678",
}
print(person)


# 접근
name = person["name"]
print(name)

# (해당 키가 있다면) 수정
person["phone"] = "010-8765-4321"
print(person)

# (해당 키가 없다면) 추가
person["nickname"] = "happybird"
print(person)

# 삭제
del person["nickname"]
print(person)

# 모든 키
print(person.keys())

# 모든 값
print(person.values())

# 모든 키-값 쌍
print(person.items())

# 비우기
person.clear()
print(person)

 

직접 실행해보시고, 실행 결과를 확인해보시길 바랍니다.


이렇게 딕셔너리에 대해 알아보았습니다.

리스트랑 조금 비슷해서 쉬웠을 것 같기도 합니다~

리스트나 딕셔너리 같은 자료형들이 더 많이 있지만, 다음에 천천히 알아보도록 합시다.

다음 시간부터는 제어문과 반복문 같은 것들에 대해 본격적으로 배워보겠습니다!!

이번 시간도 수고하셨습니다~