# yyds干货盘点 # 盘点一道Python中的yield生成器的题目

生也有涯,知也无涯。这篇文章主要讲述# yyds干货盘点 # 盘点一道Python中的yield生成器的题目相关的知识,希望能为你提供帮助。
大家好,我是皮皮。
一、前言
前几天在python最强王者交流群有个叫【Chloe】的粉丝问了一个Python生成器的问题,这里拿出来给大家分享下,一起学习下。

# yyds干货盘点 # 盘点一道Python中的yield生成器的题目

文章图片

二、解决过程
这里【月神】给出了解答,如下图所示:
# yyds干货盘点 # 盘点一道Python中的yield生成器的题目

文章图片

当然了,这块有点难理解的部分,如下图所示:
# yyds干货盘点 # 盘点一道Python中的yield生成器的题目

文章图片

如果加??return??的话,效果就不一样了。
# yyds干货盘点 # 盘点一道Python中的yield生成器的题目

文章图片

这里在额外细节化一下,【瑜亮老师】给出了??yield??用法细节。
# yyds干货盘点 # 盘点一道Python中的yield生成器的题目

文章图片

# yyds干货盘点 # 盘点一道Python中的yield生成器的题目

文章图片
这个题目主要就考察yield返回结果时,“暂停”函数,再次调用后继续执行??yield??后面的代码。
这里给出一份代码,理解起来更加容易一些:
def even_odd(x):
for j in x:
if j % 2 == 0:
yield Even + str(j)
yield Odd + str(j)


num = [0, 1, 2, 3, 4, 5]
for i in even_odd(num):
print(i, end=" ")

这个输出的结果是:??Even0 Odd0 Odd1 Even2 Odd2 Odd3 Even4 Odd4 Odd5??
【# yyds干货盘点 # 盘点一道Python中的yield生成器的题目】
# yyds干货盘点 # 盘点一道Python中的yield生成器的题目

文章图片

最后,总结下生成器的用法和特点,
# yyds干货盘点 # 盘点一道Python中的yield生成器的题目

文章图片
# yyds干货盘点 # 盘点一道Python中的yield生成器的题目

文章图片

三、总结
大家好,我是皮皮。这篇文章主要分享了Python生成器的用法问题,针对该问题给出了具体的解析和代码演示,帮助粉丝顺利解决了问题,还额外做了一些知识拓展,学到很多东西。
最后感谢粉丝【Chloe】提问,感谢【月神】、【瑜亮老师】给出的具体解析和代码演示,感谢【dcpeng】、【PI】、【老松鼠】、【冫马讠成】等人参与学习交流。
小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。

    推荐阅读