实例代码如下
def demo(): print("开始执行...") while 1: res = yield '这是返回值' print("res:",res) d1 = demo() print(d1) print(next(d1)) print("*"*20) print(next(d1))
执行结果如下:
开始执行...
这是返回值
********************
res: None
这是返回值
代码解释,个人理解,说得不对希望能够点出:
d1 = demo();生成一个对象,不会输出任何内容
print(d1); 这里不输入任何内容,因为程序第一次遇到yield就暂停了,即使yield前面有输出语句,一样给输出
print(next(d1)); 程序会接着yield继续执行,第二次遇到yield,return“这是返回值”,加起来就会会输出开始执行...
这是返回值
print(next(d1));再次执行next(d1),相当于第三遇到yield,因为上一步相当于被return,res并没有赋值,所以为None,继续执行while,第四次遇到yield,输出“这是返回值”
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
标签:
python,yield
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
白云城资源网 Copyright www.dyhadc.com
暂无“通过实例简单了解python yield使用方法”评论...
更新日志
2024年12月25日
2024年12月25日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]