迭代器:斐波那契数列
迭代器:斐波那契数列
class FibIterator(object):"""斐波那契数列迭代器"""def __init__(self, n):self.n = n # 迭代次数self.current = 0 # 标记迭代器位置# 初始值self.num1 = 0self.num2 = 1def __next__(self):"""被next()函数调用,来获取下一个数"""if self.current < self.n:num = self.num1self.num1, self.num2 = self.num2, self.num1 + self.num2self.current += 1return numelse:# 没有迭代数据时,抛出异常raise StopIterationdef __iter__(self):"""迭代器的__iter__返回自身,规定"""return selfdef main():fib = FibIterator(20)sum1 = 0for num in fib:print(num, end=", ")sum1 += numprint()print("斐波那契数列的前20项之和为:%s" % sum1)if __name__ == '__main__':main()
转载于:https://www.cnblogs.com/andy9468/p/8988458.html
迭代器:斐波那契数列相关推荐
- 迭代求斐波那契数列python_python中的迭代器(以斐波那契数列为主讲解)
简要引入: 迭代一词,我们再熟悉不过了,它经常出现在算法中,在数学中也有很多的使用,比如一个算法经过多少次的迭代,执行的效率有了很大的提高-- 迭代的意思类似于循环,每一次重复的过程被称为一次迭代的过 ...
- 迭代器协议、斐波那契数列
f1.__iter__=iter(f1) 把一个对象变成可迭代对象 __init__ 构造函数 for循环遵循迭代器协议,要求对象有next.iter方法,有iter方法,for循环跟着对象对触发对象 ...
- js迭代器实现斐波那契数列
// 直接上代码 function lterator () {let arr = [0, 1]let index = 0return {next () {if (arr[index] === unde ...
- Python:递归输出斐波那契数列
今天学习Python的时候做一道练习题,题目是这样的: 题目 导入 问题 有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总对数 ...
- python兔子繁殖问题中如何输出相应月份的数列_斐波那契数列介绍及Python中五种方法斐波那契数列...
Q:斐波那契数列为何那么重要,全部关于数学的书几乎都会提到? A:由于斐波那契数列在数学和生活以及天然界中都很是有用.html 1. 斐波那契数列 概念引入 斐波那契数列(Fibonacci sequ ...
- 兔子问题与斐波那契数列
#题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子, #假如兔子都不死,问每个月的兔子总数为多少? #通过数学分析我们知道,兔子的规律为数列1, ...
- python3实现斐波那契数列--4种方法
基础版(list方法) # 比较占内存 w = int(input("输入一个数字还你一个斐波那契数列:")) list_res = [] def list_n(n):if n&g ...
- python斐波那契数列前20项_Python初学者笔记:打印出斐波那契数列的前10项
问题:斐波那契数列(意大利语: Successione di Fibonacci),又称黄金分割数列.费波那西数列.费波拿契数.费氏数列,指的是这样一个数列:0.1.1.2.3.5.8.13.21.- ...
- Python编程笔记(第三篇)【补充】三元运算、文件处理、检测文件编码、递归、斐波那契数列、名称空间、作用域、生成器...
一.三元运算 三元运算又称三目运算,是对简单的条件语句的简写,如: 简单条件处理: if 条件成立:val = 1else:val = 2 改成三元运算 val = 1 if 条件成立 else 2 ...
最新文章
- 侯捷译Practical Java(含源码)
- 刚刚,YOLOv4重磅更新!快来一睹论文真容吧!
- 矩阵化为行最简形矩阵计算器_[内附完整源码和文档] 基于C++的小型特殊计算器...
- boost::hana::detail::unpack_flatten用法的测试程序
- python有道字典_Python基于有道实现英汉字典功能
- 使用Angular与TypeScript构建Electron应用(五)
- L2-006. 树的遍历-PAT团体程序设计天梯赛GPLT
- 列出Server上5张最大的表
- ATAT-mcsqs- 运行后出现报错:段错误(吐核/core dumped)
- 网站建设备案和不备案的一些疑惑问题大全
- 50篇各种磨皮大法PS教程集合,想学磨皮方法的可以看看
- html设置超出两行显示省略号,css 文本两行显示,超出省略号表示
- 点到点法式平面投影点的计算
- linux卸载exe文件怎么恢复,linux中误删除程序包恢复实例
- 【洛谷】P1138 第k小整数
- keil startup_stm32f10x_hd.s编译报错
- 成都榆熙:拼多多商家都想要提高客单价,但是怎么去提高呢?
- 基站三角定位法 java_什么是三角定位法?
- FOC控制笔记 -基本术语概念
- 非线性微分方程有限差分解法
热门文章
- 字节跳动面试经验 php,双指针算法:字节跳动初级面试题 PHP
- 怎么用Python写出随时间变化的字_面试必备 | 带你彻底搞懂 Python 生成器
- Windows系统中搭建Python编译环境
- 一句python,一句R︱python中的字符串操作、中文乱码、NaN情况(split、zip...)
- R语言︱用excel VBA把xlsx批量转化为csv格式
- scrapy tool 命令
- 最短路径Dijkstra算法(邻接矩阵)
- Python3 configparser值为多行时配置文件书写格式
- OpenStack云第三天
- Hibernate框架基本使用