python生成器

python生成器

# -*- coding:UTF-8 -*-
def create_num(all_num):
    #a = 0
    #b = 1
    a, b = 0, 1
    current_num = 0
    while current_num < all_num:
        #print(a)
        yield a #如果一个函数中有yield语句,那么这个就不再是函数,而是一个生成器模板
        a, b = b, a+b
        current_num += 1


#如果在调用create_num的时候,发现这个函数中有yield那么此时不是调用函数,而是创建一个生成器对象
obj = create_num(10)

'''
#过程理解
for i in range(10):
    ret = next(obj)
    print(ret)
'''
for num in obj:
    print(num)

在这里插入图片描述

posted @ 2022-04-24 15:33  南瓜头pumpkin  阅读(15)  评论(0)    收藏  举报