嵌套列表生成內容的表,我有一個Python列表中的可用這些數據:生成扁平化數據在Python
data = [
{title: 'Section 1', level: 1, page_number: 1},
{title: 'Section 1.1', level: 2, page_number: 2},
{title: 'Section 1.2', level: 2, page_number: 3},
{title: 'Section 2', level: 1, page_number: 4},
{title: 'Section 2.1', level: 2, page_number: 5},
{title: 'Section 3', level: 1, page_number: 6},
]
由此,我想獲得這種嵌套結構的,與使用模板引擎更兼容:
toc = [
{title: 'Section 1', page_number: 1, sub: [
{title: 'Section 1.1', page_number: 2, sub: []},
{title: 'Section 1.2', page_number: 3, sub: []},
]},
{title: 'Section 2', page_number: 4, sub: [
{title: 'Section 2.1', page_number: 5, sub: []},
]},
{title: 'Section 3', page_number: 6, sub: []},
]
有關如何實現此目的的提示?我嘗試了遞歸函數,但對於我有限的大腦來說,它變得非常棘手。
任何幫助非常感謝。
編輯:增加了一個事實,一個條目最終可以沒有孩子。對不起,錯過了。
不需要遞歸,循環和像列表結構一樣的堆棧也可以工作。 – Ofir 2010-06-28 08:38:17