Python如何地柜解析这种数据类型,data__key__hello = "world"
黄舟
黄舟 2017-05-18 10:54:23
0
2
680

比如有这么一个字典:

{
    'data__key_hello': "world",
    'data__key_bar': "foo",
    'data__a': "b",
    'b': 'c',
}

转换之后变成

{
    'data': {
        'key': {
            'hello': 'world',
            'bar': 'foo'
        },
        'a': 'b',
    },
    'b': 'c'
}

就是以下划线进行一个分割

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(2)
巴扎黑

凑合着用吧

d = {
    'data__key_hello': "world",
    'data__key_bar': "foo",
    'data__a': "b",
    'b': 'c',
}

n = {}
for k, v in d.items():
    keys = k.replace('__', '_').split('_')
    child = n
    for i, key in enumerate(keys):
        child = child.setdefault(key, {} if i < len(keys) - 1 else v)

print n
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板