私は数時間を費やしましたが、まだ最良の結果を得ることができません. ただし、タスクは非常に簡単ですが、今日は何かが足りないか、単に遅いようです。
したがって、オブジェクトの単純なツリー構造があります。正式なオブジェクトは次のようになります。
node:
name {str}
value {str}
children {list}
node,
node,
...
walk
すべてのノードのリストをタプルのリストの形式で出力する関数を作成する必要があります。
for node in topNode.walk():
path, object = node
wherepath
は明らかに現在のノードへのパスです (つまり/name/name
)。ほとんど同じようにos.walk()
機能します。
現時点では、私はこのコードで立ち往生しています:
def walk(self):
result = []
for child in self.children:
result.append(child)
result.extend(child.walk())
return result
ここに追加するpath
には?
助けてくれてありがとう!