hutool.core.struct¶
Struct 结构化数据类。
提供 dict 与 object 混合体,支持 obj.key 和 obj['key'] 两种访问方式,
Module Contents¶
Classes¶
结构化字典,支持属性访问。 |
Data¶
API¶
- hutool.core.struct.__all__ = ['Struct']¶
- class hutool.core.struct.Struct¶
Bases:
dict结构化字典,支持属性访问。
Struct继承自dict,在保留字典全部行为的同时, 允许通过obj.key形式访问键值对。s = Struct({"name": "test", "age": 20}) assert s.name == "test" assert s["age"] == 20 s.email = "a@b.com" assert s["email"] == "a@b.com"
Initialization
Initialize self. See help(type(self)) for accurate signature.
- __getattr__(name: str) Any¶
属性访问,映射到字典键。
- __setattr__(name: str, value: Any) None¶
属性设置,映射到字典键。
- __delattr__(name: str) None¶
属性删除,映射到字典键。
- __repr__() str¶
- classmethod from_dict(obj: Any, recursive: bool = True) Any¶
将 dict/list 递归转换为 Struct 对象。
- 参数:
obj – 输入对象(支持 dict、list、tuple 或其他标量)
recursive – 是否递归转换嵌套对象,默认 True
- 返回:
转换后的对象(dict → Struct, list → 转换后的列表)
data = {"user": {"name": "test", "tags": [{"id": 1}, {"id": 2}]}} s = Struct.from_dict(data) assert s.user.name == "test" assert s.user.tags[0].id == 1