1、生成器是返回迭代器的函数,只能用于迭代操作。
2、在调用生成器运行过程中,每次遇到yield时,函数都会暂停并保存所有当前的运行信息。
返回yield值,并在下次执行next()方法时从当前位置继续运行。调用生成器函数,返回迭代器对象。
实例
import sys def fibonacci(n): # 生成器函数 - 斐波那契 a, b, counter = 0, 1, 0 while True: if (counter > n): return yield a a, b = b, a + b counter += 1 f = fibonacci(10) # f 是一个迭代器,由生成器返回生成 while True: try: print (next(f), end=" ") except StopIteration: sys.exit()
以上就是python生成器的调用理解,希望对大家有所帮助。更多Python学习指路:python基础教程
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。