Im пытается создать класс итератора, который даст мне путь, бросает древовидный график, который на каждой итерации возвращает следующий шаг в соответствии с определенными условиями.Как использовать класс итератора?
Так я посмотрел, как сделать это здесь: Build a Basic Python Iterator
и это то, что я написал до сих пор:
def travel_path_iterator(self, article_name):
return Path_Iter(article_name)
class Path_Iter:
def __init__(self,article):
self.article=article
def __iter__(self):
return next(self)
def __next__(self):
answer= self.article.get_max_out_nb()
if answer != self.article.get_name():
return answer
else:
raise StopIteration
Но у меня есть проблема, чтобы назвать этот класс. мой выход всегда:
<__main__.Path_Iter object at 0x7fe94049fc50>
любые предположения, что им делать неправильно?
Какой выход? Ваш код ничего не выводит. – ppperry
Ваш '__next__'-метод выглядит странно. Получает ли 'get_max_out_nb' следующий ответ каждый раз? – Daniel
Было бы проще написать функцию генератора, дающую значения. –