Python斐波拉契生成器与迭代器

转载 2013年12月05日 09:51:44
迭代器:
class Fib:                                        ①
    def __init__(self, max):                      ②
        self.max = max

    def __iter__(self):                           ③
        self.a = 0
        self.b = 1
        return self

    def __next__(self):                           ④
        fib = self.a
        if fib > self.max:
            raise StopIteration                   ⑤
        self.a, self.b = self.b, self.a + self.b
        return fib                                ⑥
生成器:
def fib(max):
    a, b = 0, 1          ①
    while a < max:
       yield a          ②
        a, b = b, a + b  ③

python实现斐波那契数列

# -*- coding: utf-8 -*- # 斐波那契数列(Fibonacci sequence),指的是这样一个数列:1、1、2、3、5、8、13、21、34 # 要求一:输出第10个斐波那契...
  • Guo_Apple
  • Guo_Apple
  • 2017年03月31日 15:16
  • 1083

python 迭代器

迭代是访问集合元素的一种方式,迭代器是一个可以记住遍历位置的对象,从第一个元素迭代到最后一个元素,迭代器只能往前,不能后退。 可迭代对象: list、dict、tuple、str 不能迭代: in...
  • Despairvip
  • Despairvip
  • 2018年01月18日 13:10
  • 55

Python中生成器和迭代器的区别

Python中生成器和迭代器的区别:
  • u014745194
  • u014745194
  • 2017年04月14日 21:20
  • 3414

Python中的迭代器,生成器,协程(coroutine)--整理自CSDN微信公开课

本文整理自CSDN Python学习班2017年3月16日的微信公开课,授课老师陈舸。 注:示例代码中用了print()函数,所以,如果在Python2下运行,需要在第一行添加: from __fut...
  • LucyGill
  • LucyGill
  • 2017年03月17日 17:20
  • 723

Python生成器、迭代器、装饰器

Python生成器、迭代器、装饰器1.生成器(Generator)1.列表生成式实现最简单的生成器:g = (x*x for x in range(10)) for i in g: print...
  • hduxiejun
  • hduxiejun
  • 2017年03月05日 19:36
  • 673

Python可迭代对象,迭代器,生成器的区别

本篇文章简单谈谈Python中可迭代对象,迭代器和生成器之间的关系。刚开始我认为这两者是等同的,但后来发现并不是这样;直接抛出结论: 可迭代对象包含迭代器。 如果一个对象拥有__iter__方法,其是...
  • jinixin
  • jinixin
  • 2017年05月16日 12:39
  • 1037

python 迭代器和生成器的区别

迭代器(iterator)是一个实现了迭代器协议的对象,python的一些内置数据类型(列表,数组,字符串,字典等)都可以通过for语句进行迭代,我们也可以自己创建一个容器,实现了迭代器协议,可以通过...
  • xiongjiezk
  • xiongjiezk
  • 2016年04月19日 00:47
  • 992

python3中的迭代器与生成器

迭代器(iterator) 生成器(generator) python3
  • youngbit007
  • youngbit007
  • 2017年03月12日 17:42
  • 1081

python迭代器、生成器和yield语句

http://blog.csdn.net/pipisorry/article/details/22107553一、迭代器(iterator)迭代器:是一个实现了迭代器协议的对象,Python中的迭代器...
  • pipisorry
  • pipisorry
  • 2014年12月22日 21:08
  • 3282

python拗口语法点总计1:迭代器、生成器、元组

自学python有段时间,感觉蛮挺带劲的(让自己分分钟想起刚来北京拼命自学C#的经历),现总结下python基本语法里拗口的几个知识点:迭代器、生成器、元组。...
  • lu_yongchao
  • lu_yongchao
  • 2017年04月03日 23:28
  • 1243
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Python斐波拉契生成器与迭代器
举报原因:
原因补充:

(最多只允许输入30个字)