Python - 将字符串分解为嵌套字典键

时间:2017-01-20 07:01:29

标签: python

我有一个字符串:candidate__name__first_name。我想将其转换为以下形式的嵌套字典:

{ 
  candidate: {
    name: {
      first_name: 'MyName'
    }
  }
}

最好的方法是什么?

2 个答案:

答案 0 :(得分:3)

这个怎么样:

recursive_key = 'candidate__name__first_name'
value = 'MyName'
for key in reversed(recursive_key.split('__')):
    value = {key: value}
print(value)

答案 1 :(得分:1)

STH。像这样:

tokens = 'candidate__name__first_name'.split('__')
final_d = d = {}
for token in tokens[:-1]:
    d[token] = {}
    d = d[token]
d[tokens[-1]] = 'MyName'

final_d
# {'candidate': {'name': {'first_name': 'MyName'}}}