阅读量:1
要实现一个返回迭代器的函数,可以使用生成器函数来实现。生成器函数是一种特殊的函数,可以在函数体中使用yield语句来产生值,每次调用生成器函数时都会返回一个迭代器对象。
下面是一个简单的例子,演示了如何使用生成器函数实现一个返回迭代器的函数:
def my_iterator(): data = [1, 2, 3, 4, 5] for item in data: yield item # 使用my_iterator函数获取迭代器对象 my_iter = my_iterator() # 使用迭代器遍历数据 for item in my_iter: print(item)
在上面的例子中,my_iterator
函数是一个生成器函数,用于生成包含数字1到5的迭代器对象。在函数体中使用yield
语句来产生每个数字。通过调用my_iterator
函数,可以获得一个迭代器对象。然后,可以使用for
循环遍历迭代器对象,依次获取生成的值并打印出来。
生成器函数具有惰性求值的特点,它们会在每次调用yield
语句时暂停执行并返回一个值,下次调用时会从上次暂停的位置继续执行。这种特性使得生成器函数非常适用于处理大量数据或需要延迟计算的情况。