Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬에서 딕셔너리 안에 딕셔너리를 정의하는 방법

파이썬에서 딕셔너리(dictionary) 객체는 가변(mutable) 자료형입니다. 이러한 특성 덕분에 하나의 딕셔너리 객체를 다른 딕셔너리의 키에 연결된 값으로 사용할 수 있습니다.

즉, 키의 값(value) 부분에 또 다른 딕셔너리를 정의하면 중첩 딕셔너리(nested dictionary)를 만들 수 있습니다. 이는 복잡한 계층 구조의 데이터를 직관적으로 표현할 때 매우 유용합니다.

중첩 딕셔너리 예제

다음 예제는 학생 두 명의 정보를 각각 하나의 딕셔너리로 정의하고, 이를 다시 상위 딕셔너리의 값으로 저장한 것입니다.

>>> students = {
    "student1": {
        "name": "Raaj",
        "age": 23,
        "subjects": ["Phy", "Che", "maths"],
        "GPA": 8.5
    },
    "student2": {
        "name": "Kiran",
        "age": 21,
        "subjects": ["Phy", "Che", "bio"],
        "GPA": 8.25
    }
}

중첩 딕셔너리 접근 방법

중첩된 값에 접근하려면 키를 연속해서 지정하면 됩니다.

>>> students["student1"]["name"]
'Raaj'
>>> students["student2"]["GPA"]
8.25

값 수정 및 추가

내부 딕셔너리의 값도 일반 딕셔너리와 동일하게 수정하거나 새로운 키-값 쌍을 추가할 수 있습니다.

>>> students["student1"]["GPA"] = 9.0
>>> students["student1"]["city"] = "Seoul"

이처럼 딕셔너리가 가변 자료형이라는 점을 활용하면, JSON과 유사한 구조의 데이터를 파이썬에서 손쉽게 다룰 수 있습니다.