我花了幾個小時,仍然無法獲得最佳效果。然而,這項任務非常簡單,但似乎我錯過了一些東西,或者今天簡單地放慢了速度。設置路徑沿着樹形結構行走的功能
因此,我們有一個簡單的樹形結構的對象。在正式的外觀對象是這樣的:
node:
name {str}
value {str}
children {list}
node,
node,
...
我需要創建walk
功能輸出的元組的列表格式的所有節點列表:
for node in topNode.walk():
path, object = node
其中path
顯然是一個路徑當前節點(即/name/name
)。功能與os.walk()
功能幾乎相同。
在我的卡我用這段代碼的時刻:
def walk(self):
result = []
for child in self.children:
result.append(child)
result.extend(child.walk())
return result
如何在這裏補充path
?
感謝您的幫助!
我以你希望的東西輸出稍微困惑。 –
確實。我今天肯定很慢。更新。 – VisioN
我將它解釋爲分別作爲「路徑」和「對象」返回的路徑列表和對象列表......但也許我錯了...... – mgilson