例如有這麼一個字典:
{
'data__key_hello': "world",
'data__key_bar': "foo",
'data__a': "b",
'b': 'c',
}
轉換之後變成
{
'data': {
'key': {
'hello': 'world',
'bar': 'foo'
},
'a': 'b',
},
'b': 'c'
}
就是以下劃線進行一個分割
巴扎黑2017-05-18 10:56:23
湊合著用吧
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