в генераторе yield в python 3 нет функции next()
на этот вопрос, у меня есть бесконечная последовательность с использованием генераторов Python. Но тот же код не работает в Python 3, потому что кажется, что нет
2 ответа:
в Python 3, Используйте
next(uptofive)
вместоuptofive.next()
.встроенный
next()
функция также работает в Python 2.6 или выше.
в Python 3, чтобы сделать синтаксис более последователен,
next()
метод был переименован в__next__()
. Тебе бы это пригодилось. Это объясняется в PEP 3114.следуя решению Грега и вызывая builtin
next()
функции (который затем пытается найти объекта__next__()
способ) рекомендуется.