python字典转为对象,用"."方式访问对象属性

params = {
    "name": "login",
    "params": {
        "transaction_id": "cc258bdb3dd4d6bba2",
        "platformType": "第三方平台",
        "uid": 9
    }
}


class Dict(dict):
    __setattr__ = dict.__setitem__
    __getattr__ = dict.__getitem__


def dict2obj(dictObj):
    if not isinstance(dictObj, dict):
        return dictObj
    d = Dict()
    for k, v in dictObj.items():
        d[k] = dict2obj(v)
    return d


# 转换字典成为对象,可以用"."方式访问对象属性
res = dict2obj(params)
print(res.name)
print(res.params.uid)

 

posted @ 2020-03-01 22:07  ilovetesting  阅读(2908)  评论(0编辑  收藏  举报