0
我有下面的代碼,它必須將這個元組如何優化蟒蛇遞歸
(
'person.firstname',
'person.patronymic',
'person.documents.type',
'person.documents.number',
'person.employee_set.unit.short_name',
'person.employee_set.group_set.name',
'person.employee_set.group_set.period.code',
'unit.short_name',
)
到字典中類似這樣的
{
"person": {
"patronymic": {},
"documents": {
"type": {},
"number": {}
},
"employee_set": {
"unit": {
"short_name": {}
},
"group_set": {
"name": {},
"period": {
"code": {}
}
}
},
"firstname": {}
},
"unit": {
"short_name": {}
}
}
代碼:
def to_dict(items):
di = {}
for item in items:
parse(di, item)
return di
def parse(di, item):
sep = item.find('.')
if sep != -1:
key = item[:sep]
if not key in di.keys():
di[key] = {}
return parse(di[key], item[sep + 1:])
elif len(item) > 0:
di[item] = {}
return di
是可能的優化此代碼無遞歸?據我瞭解它有尾遞歸,但我不明白如何將其轉換成循環
你可以看看這個帖子 - HTTP ://stackoverflow.com/a/33327123/5352399 –