У меня есть генератор, который генерирует ряд, например:
def triangleNums():
    '''generate series of triangle numbers'''
    tn = 0
    counter = 1
    while(True):
        tn = tn + counter
        yield tn
        counter = counter + 1
в python 2.6 Я могу сделать следующие вызовы:
g = triangleNums() # get the generator
g.next()           # get next val
однако в 3.0, если я выполняю те же две строки кода, я получаю следующую ошибку:
AttributeError: 'generator' object has no attribute 'next'
но синтаксис цикла итератора работает в версии 3.0
for n in triangleNums():
    if not exitCond:
       doSomething...
Я еще не смог найти ничего, что объясняет эту разницу в поведении для 3.0.
