私は数時間を費やしても、最高の結果を得ることができませんでした。しかし、タスクは非常に簡単ですが、私は何かが不足しているか、単に今日遅くなっているようです。設定パスでツリー構造を歩く機能
したがって、オブジェクトの単純なツリー構造があります。このような正式なルックスでのオブジェクト:
node:
name {str}
value {str}
children {list}
node,
node,
...
私はタプルのリストの形式で、すべてのノードのリストを出力walk
関数を作成する必要があります。
path
は明らかへのパスです
for node in topNode.walk():
path, object = node
現在のノード(すなわち、/name/name
)。ほぼ同じですos.walk()
機能。
def walk(self):
result = []
for child in self.children:
result.append(child)
result.extend(child.walk())
return result
ここでpath
を追加する方法:私は、コードのこの部分にこだわっているんだ瞬間
?
ありがとうございました!これはうまくいくかもしれない
何か私はあなたが出力になりたいものになど少し混乱しています。 –
確かに。私は今日は間違いなく遅いです。更新しました。 – VisioN
私はそれをパスのリストと "path"と "object"として返されたオブジェクトのリストと解釈しましたが、多分私は間違っています... – mgilson