terador @python através da árvore com lista de filhos

Eu não entendo completamente os iteradores python, eu tenho um objeto com uma lista de filhos e quero iterar por essa estrutura. Desejo obter o mesmo comportamento da função printall, mas com um iterado

    class t:
            def __init__(self, i):
                    self.l = []
                    self.a = 0
                    for ii in range(i):
                            self.a = ii
                            self.l.append(t(i-1))

            def __iter__(self):
                    return self

            def next(self):
                    for i in self.l:
                            yield i.__iter__()
                    yield self

            def printall(self):
                    for i in self.l:
                            i.printall()
                    print self.a

espero que isso seja informação suficiente, obrigado

editar

eu só quero poder percorrer todas as folhas da árvore e fazer algo com o objeto, ou seja, quando eu tiver uma instância

    bla = t(3) 

quero poder percorrer todos os nós com

    for x in bla:
            print x.a

por exemplo. eu quero poder fazer algo com cada x, só preciso acessar todas as crianças uma vez

questionAnswers(3)

yourAnswerToTheQuestion