オブジェクトのリストを含むオブジェクトを反復処理することは可能ですか?
たとえば、次のクラスがあります
Class Page(object)
def __init__(self, name):
self.name = name
self.pages = []
次に、新しい Page オブジェクトを作成し、それに他のページ オブジェクトを追加します。
page = Page('FirstPage')
apagepage = Page('FirstChild')
anotherpagepage = Page('SecondChild')
apagepage.pages.append(Page('FirstChildChild'))
apagepage.pages.append(Page('SecondChildChild'))
page.pages.append(apagepage)
page.pages.append(anotherpagepage)
私がやりたいことは
for thispage in page:
print thispage.name
そして、次の出力を取得します
FirstPage
FirstChild
SecondChild
FirstChildChild
SecondChildChild
だから私はすべての第1レベルを取得し、次に第2レベル、次に第3レベルを取得します。
ただし、次の出力も見つかります
FirstPage
FirstChild
FirstChildChild
SecondChildChild
SecondChild