logo

easydict: 딕셔너리의 편리한 사용을 위한 파이썬 패키지 📂프로그래밍

easydict: 딕셔너리의 편리한 사용을 위한 파이썬 패키지

개요1

딕셔너리를 편리하게 사용할 수 있게 해주는 easydict 패키지를 소개한다. 패키지 내의 EasyDict를 사용하면 딕셔너리의 값value을 속성attribute처럼 접근할 수 있으며 이는 재귀적으로 작동한다.

코드

파이썬의 기본 딕셔너리는 다음과 같이 정의한다.

김채원 = {
    '국적': '대한민국',
    '나이': 22,
    '키': 163,
}

# 혹은
김채원 = {}

김채원['국적'] = '대한민국'
김채원['나이'] = 22
김채원['키'] = 163

딕셔너리의 값을 불러오려면, 위에서 정의한 방식 그대로 각괄호 안에 키를 넣으면 된다. 이때 키는 숫자가 아닌 문자라면 따옴표도 반드시 있어야하며, 속성처럼 사용할 수 없다.

>>> 김채원['국적']
'대한민국'

>>> 김채원[나이]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name '나이' is not defined

>>> 김채원.키
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'dict' object has no attribute '키'

>>> 사쿠라 = { 국적: '일본'}
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name '국적' is not defined

EasyDict를 사용하면 다음과 같이 편리하게 쓸 수 있다.

>>> from easydict import EasyDict as edict
>>>
>>> 김채원 = edict()
>>> 김채원.국적 = '대한민국'
>>> 김채원.키 = 163
>>> 김채원.나이 = 22

>>> 김채원.국적
'대한민국'

>>> 김채원.키
163

특히 재귀적으로 작동하기 때문에 딕셔너리 내의 딕셔너리를 정의할 때 유용하다.

>>> 르세라핌 = edict()
>>> 르세라핌.김채원 = edict()
>>> 르세라핌.사쿠라 = edict()
>>> 르세라핌.허윤진 = edict()
>>> 르세라핌.카즈하 = edict()
>>> 르세라핌.홍은채 = edict()
>>>
>>> 르세라핌.김채원.국적 = '대한민국'
>>> 르세라핌.김채원.키 = 163
>>> 르세라핌.김채원.나이 = 22
>>> 
>>> 르세라핌
{'김채원': {'국적': '대한민국', '키': 163, '나이': 22}, '사쿠라': {}, '허윤진': {}, '카즈하': {}, '홍은채': {}}

환경

  • OS: Windows11
  • Version: Python 3.9.13, easydict==1.10