生成器函数
一个使用
yield
语句 (见 yield 语句 章节)的函数或方法被称作一个 生成器函数。 这样的函数在被调用时,总是返回一个可以执行函数体的迭代器对象:调用该迭代器的iterator.__next__()
方法将会导致这个函数一直运行直到它使用yield
语句提供了一个值为止。 当这个函数执行return
语句或者执行到末尾时,将引发StopIteration
异常并且这个迭代器将到达所返回的值集合的末尾。
一个使用
yield
语句 (见 yield 语句 章节)的函数或方法被称作一个 生成器函数。 这样的函数在被调用时,总是返回一个可以执行函数体的迭代器对象:调用该迭代器的iterator.__next__()
方法将会导致这个函数一直运行直到它使用yield
语句提供了一个值为止。 当这个函数执行return
语句或者执行到末尾时,将引发StopIteration
异常并且这个迭代器将到达所返回的值集合的末尾。