目前我正在使用json
将字典保存到配置文件中。我加载它以将其转换为dict
,然后将其转换为SimpleNamespace
,因为我更喜欢使用点表示法来访问设置。为了做到这一点,我按照以下示例进行加载:
import json
from types import SimpleNamespace
SETTINGS = json.load(open("config.json", 'r'))
SETTINGS = SimpleNamespace(**SETTINGS)
然而,由于我目前正在将 dict
加载到一个 SimpleNamespace
中,因此它没有加载配置文件中的子字典。比如,如果我执行以下操作:
SETTINGS.server_info.port
我遇到了错误:
AttributeError: 'dict' object has no attribute 'port'
我想知道如何将所有字典加载到命名空间中,以便我能够在整个字典中使用点符号表示法。