Jer*_*ell 8 python algorithm performance
我有一个字典,看起来像这样:
{
'foo': {
'opt1': 1,
'opt2': 2,
},
'foo/bar': {
'opt3': 3,
'opt4': 4,
},
'foo/bar/baz': {
'opt5': 5,
'opt6': 6,
}
}
Run Code Online (Sandbox Code Playgroud)
我需要让它看起来像:
{
'foo': {
'opt1': 1,
'opt2': 2,
'bar': {
'opt3': 3,
'opt4': 4,
'baz': {
'opt5': 5,
'opt6': 6,
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我应该指出,可以并且将会有多个顶级键(在这种情况下为'foo').我可能会把东西放在一起以获得我需要的东西,但我希望有一个更有效的解决方案.
像这样:
def nest(d):
rv = {}
for key, value in d.iteritems():
node = rv
for part in key.split('/'):
node = node.setdefault(part, {})
node.update(value)
return rv
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
414 次 |
最近记录: |