这个项目能做什么

DotWiz 是一个 Python 库,提供了一种字典子类,允许以属性风格(点号)访问键,包括自动转换嵌套字典和列表值。用户无需再写 my_dict['this']['dict']['has'][0]['nested']['data'],而是可以写成 dw.this.dict.has[0].nested.data。 安装方式为 pip install dotwiz。主要的 DotWiz 类接受一个字典以及可选的关键字参数,并提供 to_dict() 方法转换回普通字典。辅助函数 make_dot_wiz() 可从键值对的可迭代对象构建实例,允许通过方括号表示法访问那些不是有效 Python 标识符的键。 DotWizPlus 对此进行了扩展,将特殊处理的键(包含空格、大小写混合、以数字开头、保留关键字,或与 items、get、values 等字典方法冲突的名称)转换为安全的蛇形命名属性名。原始键仍可通过字典风格访问,to_attr_dict() 返回经过清理的属性形式。 README 声称其性能优于 dataclasses.make_dataclass、prodict、Box 和 DotMap 等替代方案,基准测试详情见文档。该项目在 Read the Docs 上有文档,通过 GitHub Actions 和 Codecov 进行测试,并通过拉取请求和问题接受贡献。