Python使用迭代器捕获Generator返回值的方法


Posted in Python onApril 05, 2017

本文实例讲述了Python使用迭代器捕获Generator返回值的方法。分享给大家供大家参考,具体如下:

用for循环调用generator时,发现拿不到generator的return语句的返回值。如果想要拿到返回值,必须捕获StopIteration错误,返回值包含在StopIteration的value中:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
def fib(max):
  n, a, b = 0, 0, 1
  while n < max:
    yield b
    a, b = b, a + b
    n = n + 1
  return 'done'
# 捕获Generator的返回值
g = fib(6)
while True:
  try:
    x=next(g)
    print('g=',x)
  except StopIteration as e:
    print('Generrator return value:', e.value)
    break

输出:

g= 1
g= 1
g= 2
g= 3
g= 5
g= 8
Generrator return value: done

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python操作日期和时间的方法
Mar 11 Python
Python按行读取文件的实现方法【小文件和大文件读取】
Sep 19 Python
python 划分数据集为训练集和测试集的方法
Dec 11 Python
关于python中密码加盐的学习体会小结
Jul 15 Python
python爬虫 urllib模块url编码处理详解
Aug 20 Python
Python 类,property属性(简化属性的操作),@property,property()用法示例
Oct 12 Python
基于pytorch 预训练的词向量用法详解
Jan 06 Python
django中url映射规则和服务端响应顺序的实现
Apr 02 Python
python操作ini类型配置文件的实例教程
Oct 30 Python
python获取淘宝服务器时间的代码示例
Apr 22 Python
pytorch中的numel函数用法说明
May 13 Python
Python探索生命起源 matplotlib细胞自动机动画演示
Apr 21 Python
由浅入深讲解python中的yield与generator
Apr 05 #Python
Python中shutil模块的学习笔记教程
Apr 04 #Python
python 遍历字符串(含汉字)实例详解
Apr 04 #Python
python模拟登录并且保持cookie的方法详解
Apr 04 #Python
python 容器总结整理
Apr 04 #Python
详解Python中最难理解的点-装饰器
Apr 03 #Python
JSON Web Tokens的实现原理
Apr 02 #Python
You might like
php执行sql语句的写法
2009/03/10 PHP
PHP 获取远程文件内容的函数代码
2010/03/24 PHP
php阿拉伯数字转中文人民币大写
2015/12/21 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
2017/11/16 PHP
thinkPHP实现基于ajax的评论回复功能
2018/06/22 PHP
javascript 操作文件 实现方法小结
2009/07/02 Javascript
jquery取子节点及当前节点属性值的方法
2014/09/09 Javascript
浅谈Sizzle的“编译原理”
2015/04/14 Javascript
js实现点击链接后延迟3秒再跳转的方法
2015/06/05 Javascript
js实现获取当前时间是本月第几周的方法
2015/08/11 Javascript
详解JavaScript对Date对象的操作问题(生成一个倒数7天的数组)
2015/10/01 Javascript
jQuery中Ajax全局事件引用方式及各个事件(全局/局部)执行顺序
2016/06/02 Javascript
React中ES5与ES6写法的区别总结
2017/04/21 Javascript
Angular 4.x+Ionic3踩坑之Ionic3.x pop反向传值详解
2018/03/13 Javascript
微信小程序wx.uploadfile 本地文件转base64的实现代码
2018/06/28 Javascript
Vue简单实现原理详解
2020/05/07 Javascript
Vue实现购物车实例代码两则
2020/05/30 Javascript
PYTHON基础-时间日期处理小结
2018/05/05 Python
Python数据可视化之画图
2019/01/15 Python
python 随机生成10位数密码的实现代码
2019/06/27 Python
Python split() 函数拆分字符串将字符串转化为列的方法
2019/07/16 Python
python实现发送邮件
2021/03/02 Python
css3 仿写阿里云水纹效果的示例代码
2018/02/10 HTML / CSS
AmazeUI图片轮播效果的示例代码
2020/08/20 HTML / CSS
英国领先的NHS批准的在线药店:Pharmacy2U
2017/01/06 全球购物
荷兰最大的儿童服装店:The Kids Republic
2019/04/13 全球购物
春节晚会主持词
2014/03/24 职场文书
实验室的标语
2014/06/20 职场文书
2014工程部年度工作总结
2014/12/17 职场文书
安全先进个人材料
2014/12/29 职场文书
承诺保证书格式
2015/02/28 职场文书
法院个人总结
2015/03/03 职场文书
行政处罚决定书
2015/06/24 职场文书
防溺水主题班会教案
2015/08/12 职场文书
分享15个Webpack实用的插件!!!
2021/03/31 Javascript
HDFS免重启挂载新磁盘
2022/04/06 Servers