栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python迭代器中Yield方法怎么用?

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python迭代器中Yield方法怎么用?

 

Yield用于返回数据,程序执行到 yield 后,返回结果,记住当前状态,暂停执行,下次调用时,根据上次的状态,返回下一个结果,记住新的状态,暂停执行。通俗的讲,就是调用一次,返回一个数据,再调用一次,返回下一个数据。没错,类似我们日常生活中的挤牙膏。

下面就为大家详细介绍关于Yield方法的使用。

定义生成器函数:

def getData():
listData=(x**2 for x in range(6))
for x in listdata:
yield x

获取生成器

genData=getData()

输出生成器的数据

print(genData.__next__())

继续输出生成器的数据

print(next(genData))

遍历输出

genData1=getData()
for x in genData1:
print(x)

代码执行结果如下:

0
1
0
1
4
9
16
25

总结:

迭代器只有在下次调用的时候才会去计算本次生成的值,而不是像列表那样预先生成所有的值。这种方式需要将所有的值预先保存在列表中,当列表很大的时候,非常消耗内存。

上述就是python中迭代器中Yield方法的全部用法啦,感兴趣的小伙伴可以多多尝试使用哦~

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/10902.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号