小甲鱼 发表于 2022-1-28 23:39:53

已有 25 人购买  本主题需向作者支付 5 鱼币 才能浏览 购买主题

小古比鱼 发表于 2022-4-9 10:50:37

生成器可以让函数在退出之后还能保留状态,既简单又安全。定义生成器只需在函数中用yield表达式代替return语句,每次在执行到yield表达式时就生成一个数据,暂停并保留状态,下一次调用则从下一条语句开始继续执行。生成器就像一台制作机器,每调用一次只提供一个数据,并记住当时的状态,很神奇!生成器是一种特殊的迭代器,同样支持next()函数。生成器对象不支持下标索引,这是由生成器本身的特性决定的。视频演示了利用生成器生成斐波那契数列的方法,简单快捷!本节最后还讲了生成器表达式,即利用推导的形式获得生成器的方法,其与列表生成式情同手足,最大的特点就是一次只下一个“蛋”!

fishcyou 发表于 2022-5-4 10:50:17

def counter():
    i = 0
    while i <= 5:
      yield i
      i += 1

      
counter()
>>>
<generator object counter at 0x000001999FA50EB0>

for i in counter():
    print(i)

>>>
0
1
2
3
4
5

hveagle 发表于 2022-7-19 18:56:48

作业此时更新

炎凉来寻 发表于 2022-9-8 11:49:00

学习打卡

foolwolf0068 发表于 2022-10-6 17:36:43

本帖最后由 foolwolf0068 于 2022-10-6 17:45 编辑

继续学习,继续加油

foolwolf0068 发表于 2022-10-6 17:52:49

生成器比装饰器简单多了

墨墨在努力吖 发表于 2022-10-14 17:25:17

滴滴滴~打卡{:10_298:}

279537581 发表于 2022-10-21 14:45:45

打卡打卡{:10_298:}

migu_sm1 发表于 2022-11-8 23:54:14

Learning...{:10_254:}

andyleesh 发表于 2023-1-3 20:56:58

打卡

呱呱呱i 发表于 2023-1-4 10:24:51

嘀嘀嘀{:10_275:}

AKIO6666 发表于 2023-6-23 10:39:46

打卡!{:10_282:}

中英文泡椒 发表于 2023-9-11 17:00:46

打卡

FiatLux_ 发表于 2023-9-13 21:11:38

生成器不像列表、元组等这些可迭代对象
可以把生成器看作一个制作机器
作用是每调用一次提供一个数据并记住当时的状态

而列表元组这些可迭代对象则是容器 里面存放的是早已准备好的所有数据

生成器 近似是一种特殊的迭代器支持next()函数    但不支持下标索引的方式

neural_saber 发表于 2024-7-13 09:26:23

{:10_266:}
页: [1]
查看完整版本: 第048讲:函数(VIII)- 生成器