사전의 값을 객체속성처럼 접근하는 방법 – Python

파이썬의 사전은 키-값쌍의 형태로 데이터를 구분하여 저장할 수 있고, 사전의 값이 될 수 있는 타입은 제약이 없기 때문에 중첩된 형태의 사전을 만드는 것도 가능하다. 만약 사전의 모든 키가 문자열이라면 사전을 JSON 데이터로 변환할 수 있다.

JSON은 자바스크립트에서, 자바스크립트 객체로 바로 변환할 수 있다. 따라서 자바스크립트에서는 root.somekey.nestedkey와 같은 식으로 객체 속성으로 접근해서 특정 위치의 값을 액세스하는 것이 가능하다는 말이다. 이에 반해 파이썬에서 JSON은 사전으로 파싱되고, 같은 데이터에 접근하기 위해서는 root[‘somekey’][‘nestedkey’] 와 같은 식으로 접근해야 한다.

이것을 자바스크립트에서처럼 root.somekey.nestedkey와 같이 액세스하기 위해서 간단한 래퍼 클래스를 하나 작성했다. 여기에 JSON과 호환되는 사전을 던져주면 객체처럼 . 문법을 써서 하위 속성을 액세스할 수 있다.