본문으로 건너뛰기
실습하기

키와 값으로 구성된 데이터 구조, 딕셔너리

프로그래밍을 하다 보면 사람의 이름과 나이를 짝지어 저장하거나, 상품명과 가격을 함께 관리해야 하는 경우가 발생할 수 있습니다.

이렇게 데이터를 키(key)값(value)의 쌍으로 관리해야 하는 경우, 파이썬에서는 딕셔너리(Dictionary)라는 데이터 구조를 사용합니다.


딕셔너리란 무엇일까요?

딕셔너리(Dictionary)의 키는 데이터에 대한 식별자(ID)이며, 값은 해당 데이터의 내용을 의미합니다.

딕셔너리 기본 구조
{
"key1": "value1",
"key2": "value2",
"key3": "value3"
}

위 코드에서 "key1", "key2", "key3"는 키이고, 각각의 키에 대응하는 "value1", "value2", "value3"는 값입니다.

여기서 key1과 value1으로 구성된 키-값의 쌍을 아이템(Item)이라고 하며, 요소(Element) 또는 항목이라고도 합니다.


딕셔너리 생성하기

딕셔너리는 중괄호 { }를 사용해 생성합니다. 키와 값은 콜론(:)으로 구분하며, 여러 쌍의 키-값을 나열할 때는 각 쌍을 쉼포(,)로 구분합니다.

딕셔너리 생성 예시
# 학생의 이름과 나이를 저장하는 딕셔너리
student = {
"name": "CodeFriends",
"age": 25,
"major": "Computer Science"
}

이 코드에서 "name", "age", "major"는 키이고, 각각의 키에 대응하는 "Alice", 25, "Computer Science"는 값입니다.


딕셔너리에서 키와 값에 접근하기

딕셔너리의 가장 큰 장점은 데이터가 아무리 많더라도 키를 이용해 값에 빠르게 접근할 수 있다는 점입니다.

마치 우편번호(키)를 알면 주소(값)를 빠르게 찾을 수 있는 것과 같습니다.


키를 통해 값에 접근하기

딕셔너리에서 특정 키에 해당하는 값을 가져오려면, 키를 대괄호 [ ] 안에 문자열로 입력하면 됩니다.

딕셔너리 값 접근 예시
student = {
"name": "CodeFriends",
"age": 25,
"major": "Computer Science"
}

# 출력: CodeFriends
print(student["name"])

# 출력: Computer Science
print(student["major"])

만약 딕셔너리 내 존재하지 않는 키로 값을 요청하면, 파이썬은 KeyError를 발생시킵니다.

존재하지 않는 키로 값 요청 예시
student = {
"name": "CodeFriends",
"age": 25,
"major": "Computer Science"
}

# KeyError 발생
print(student["address"])

키 존재 여부 확인하기

특정 키가 딕셔너리에 존재하는지 확인할 때는 in 키워드를 사용합니다.

키 존재 여부 확인 예시
student = {
"name": "CodeFriends",
"age": 25,
"major": "Computer Science"
}

# in 키워드를 사용해 키 존재 여부 확인
if "age" in student:
print("Age is:", student["age"])
else:
print("Key not found")

위 코드에서는 "age"라는 키가 딕셔너리에 있는지 확인한 후, age라는 키가 존재하면 age의 값을 출력합니다.

키가 없을 경우 "Key not found"를 출력합니다.

다음 내용이 궁금하다면?

코드프렌즈 PLUS 멤버십 가입 or 강의를 등록해 주세요!