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检测某个变量是否有定义的方法
May 20 Python
Python内建数据结构详解
Feb 03 Python
pyshp创建shp点文件的方法
Dec 31 Python
Python docx库用法示例分析
Feb 16 Python
Python操作SQLite数据库过程解析
Sep 02 Python
Pyspark获取并处理RDD数据代码实例
Mar 27 Python
python库skimage给灰度图像染色的方法示例
Apr 27 Python
用Python爬取LOL所有的英雄信息以及英雄皮肤的示例代码
Jul 13 Python
python如何控制进程或者线程的个数
Oct 16 Python
Python获取指定网段正在使用的IP
Dec 14 Python
Python函数式编程中itertools模块详解
Sep 15 Python
python实现学生信息管理系统(面向对象)
Jun 05 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+ajax简单实现全选删除的方法
2016/12/06 PHP
JQuery datepicker 使用方法
2011/05/20 Javascript
JS 如果改变span标签的是否隐藏属性
2011/10/06 Javascript
纯js分页代码(简洁实用)
2013/11/05 Javascript
jquery easyui combox一些实用的小方法
2013/12/25 Javascript
javascript数据类型验证方法
2015/12/31 Javascript
实例解析angularjs的filter过滤器
2016/12/14 Javascript
解决拦截器对ajax请求的拦截实例详解
2016/12/21 Javascript
Bootstrap模态窗口源码解析
2017/02/08 Javascript
JavaScript闭包_动力节点Java学院整理
2017/06/27 Javascript
微信小程序实现根据字母选择城市功能
2017/08/16 Javascript
深入理解ES6中let和闭包
2018/02/22 Javascript
vue实现模态框的通用写法推荐
2018/02/26 Javascript
JavaScript去掉数组重复项的方法分析【测试可用】
2018/07/19 Javascript
微信小程序使用template标签实现五星评分功能
2018/11/03 Javascript
微信小程序 如何保持登录状态
2019/08/16 Javascript
layui前端时间戳转化实例
2019/11/15 Javascript
vue中路由跳转不计入history的操作
2020/09/21 Javascript
vue缓存之keep-alive的理解和应用详解
2020/11/02 Javascript
vue组件中传值EventBus的使用及注意事项说明
2020/11/16 Javascript
python实现中文分词FMM算法实例
2015/07/10 Python
python线程池(threadpool)模块使用笔记详解
2017/11/17 Python
使用Python处理Excel表格的简单方法
2018/06/07 Python
python同时遍历数组的索引和值的实例
2018/11/15 Python
python语言线程标准库threading.local解读总结
2019/11/10 Python
Python包资源下载路径报404解决方案
2020/11/05 Python
HTML5的Video标签有部分MP4无法播放的问题解析(多图)
2017/08/18 HTML / CSS
介绍下java.util.Arrays类
2012/10/16 面试题
市场营销专业个人自荐信格式
2013/09/21 职场文书
小学校长竞聘演讲稿
2014/05/16 职场文书
森林防火宣传标语
2014/06/27 职场文书
2015年清明节网上祭英烈留言寄语
2015/03/04 职场文书
贷款工作证明模板
2015/06/12 职场文书
导游词之介休绵山
2019/12/31 职场文书
Django如何与Ajax交互
2021/04/29 Python
详解Python函数print用法
2021/06/18 Python