更新时间:2023-04-04 来源:黑马程序员 浏览量:
当我们定义了一个生成器函数时,它会返回一个迭代器对象,可以通过调用next()方法逐个地获取该生成器函数中生成的值。下面是一个简单的例子来说明next()方法的使用:
def my_generator(): yield 1 yield 2 yield 3 # 创建一个迭代器对象 gen = my_generator() # 调用 next() 方法逐个获取生成器函数中生成的值 print(next(gen)) # 输出 1 print(next(gen)) # 输出 2 print(next(gen)) # 输出 3 # 如果继续调用 next() 方法,将会抛出 StopIteration 异常,表示已经没有更多的值可以迭代了 print(next(gen)) # 抛出 StopIteration 异常
在这个例子中,my_generator()是一个生成器函数,它使用yield关键字生成了三个值。然后,我们使用my_generator()函数创建了一个迭代器对象gen,并通过调用next()方法获取了这个生成器函数中生成的每个值。注意,当没有更多的值可迭代时,再次调用next()方法将会抛出StopIteration异常。