题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少对?

数学分析:兔子的规律为数列1,1,2,3,5,8,13,21....

可以使用数列归纳这个问题,

前两项为 a1=a2=1;后面的项规律为  an=an-1+an-2.

递归:

python里面也可以使用递归函数,所谓递归函数就是利用函数本身调用自身,然后一直不停地调用自身,达到合适的条件,然后返回计算后的值。

例如:#计算5的以内的加法

def add(j):

if j==0:

return 0

return j+add(j-1)

print(add(5))

#15  ,以上过程就是计算0+1+2+3+4+5

在这个过程中,add()函数本身调用了自身的函数return j+add(j-1),这样子一次又一次调用,最后直到 j==0,结束递归。上面的这个过程就叫做递归。

代码实现:

第一种解决方法,按照数学思维去设计算法:

第二种解决方法,斐波那契数列:

# _*_ coding:utf-8 _*_

def fab(max):

n, a, b = 0, 0, 1

while n < max:

print b , a, b = b, a + b

n = n + 1

fab(8)

斐波那契而数列升级版:

# _*_ coding:utf-8 _*_

def fab(max):

n, a, b = 0, 0, 1

while n < max:

yield b

a, b = b, a + b

n = n + 1

for i in fab(6):

print i

def fibo(n):

if n<=1:

return n

else:

return(fibo(n-1)+fibo(n-2))

print(fibo(8))

注意语句:

如果一个赋值语句中,要赋的值是一个表达式,那么表达式优先于赋值执行:

a=0

b=1

a, b = b, a+b 在赋值的时候,先执行右边,这时候b =1 a=0 那么 a, b = b, a+b 就是:a,b=1,0+1 赋值完的结果就是 :a=1,b=1

说简单点,就像c=3+4,那么是不是先要等右边表达式:3+4=7执行完,再把7赋值给c,这一样的道理

python数值运算m op n 100+10_python 100例(10)相关推荐

  1. python 数值运算 m op n_python数值运算 四则运算

    数值运算 描述 获得用户输入的一个字符串,格式如下:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬ ...

  2. python 数值运算 m op n_测验1 Python基本语法元素 (第1周)

    测验1: Python基本语法元素 (第1周) 选择题: 1.Guido van Rossum正式对外发布Python版本的年份是: A.2002 B.2008 C.1991 D.1998 正确答案 ...

  3. python数值运算m op n_M OP N数值运算问题

    数值运算 描述: 获得用户输入的一个字符串,格式:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮ ...

  4. python数值运算实例_Python矩阵常见运算操作实例总结

    本文实例讲述了Python矩阵常见运算操作.分享给大家供大家参考,具体如下: python的numpy库提供矩阵运算的功能,因此我们在需要矩阵运算的时候,需要导入numpy的包. 一.numpy的导入 ...

  5. Python数值运算操作符

    数值运算操作符 操作符及使用 描述 x+y 加,x与y之和 x–y 减,x与 y之差 x*y 乘,x与y之积 x/y 除,x与y之商 10/3结果是3.3333333333333335 x // y ...

  6. python数值运算实例_“每天进步一点点”案例学习python数值操作

    这是树哥讲python系列的第四篇文章. 本质上计算机熟悉的是二进制,也就是我们常说的"0,1"代码,所以无论是执行的命令还是数据本身,都必须转化为0和1他们才会认知.而我们熟悉的 ...

  7. python数值运算优先级_python格式化输出、比较优先级与数据类型。

    格式化输出 %s与%d msg = '我叫%s,今年%d岁' % ('老男孩',51)print(msg) 字典 msg = '我叫%(name)s,今年%(age)d岁' % {'age':12,' ...

  8. python数值运算答案_笨方法学Python 习题3:数字和数学计算

    数字和数学计算 print("I will now count my chickens") print("Hens",25+30/6) print(" ...

  9. python数值运算操作符也叫做内置操作符_Python的操作符 - osc_r1gtal48的个人空间 - OSCHINA - 中文开源技术交流社区...

    一.数值运算符 python提供了9个基本的数值运算符,这些运算符由编译器直接提供,所以叫做内置运算符(操作符): 运算符 功能 + 加 - 减 * 乘 / 除 % 模 ** 幂 // 整除 -i 负 ...

最新文章

  1. Subversion客户端认证凭证缓存总结
  2. USACO crypt1
  3. Chrome浏览器密码框自动填充的bug
  4. wxWidgets:wxRichTextField类用法
  5. redis pool
  6. Android 编程下 Touch 事件的分发和消费机制
  7. 【数据结构与算法】二叉堆V2.0的Java实现
  8. 利用jQuery点击DIV变颜色的小例子
  9. SQL Server-【知识与实战IV】多表查询、个数计算、多重约束条件、两表间的交集、多表之间的关系分析
  10. Hadoop MapReduce编程 API入门系列之倒排索引(二十四)
  11. 【 Codeforces Round #547 (Div. 3) F2】Same Sum Blocks (Hard)【思维贪心】
  12. 基于大数据平台的城市规划设计
  13. 教务管理系统数据字典mysql_学校教务管理系统--数据库课程设计
  14. 云时代数据容灾的正确姿势
  15. 打砖块游戏源文件_2020年10月手游海外买量分析: 多款RPG游戏上新,休闲厂商霸占Top 推广榜...
  16. matlab 多项式排序,MATLAB多项式
  17. 【数字IC/FPGA】时钟无毛刺切换
  18. 2021年最全圣诞节攻略,外贸人看这一篇就够了
  19. 针对手机连WIFI微信公众号等图片加载缓慢问题——解决方案
  20. High-speed Charting Control(MFC绘图控件)--MFC绘图Demo(包含鼠标响应)

热门文章

  1. 一次微服务与IoT的深度探秘与实战
  2. 跳槽时,这些Java面试题99%会被问到
  3. 那些没说出口的研发之痛,做与不做微服务的几大理由
  4. 排序后顺序错乱java_排列顺序不对怎么调
  5. 文字时钟罗盘动态html代码_罗盘时钟手机版,罗盘时钟屏保,罗盘时钟壁纸
  6. hm55主板支持最大内存_内存频率取决于CPU还是主板?内存频率看主板支持还是看CPU支持?...
  7. 牛腩知识小结-盒子模型
  8. 旋转目标检测rotation-yolov5笔记
  9. mxnet METRIC自定义评估验证函数
  10. tensors used as indices must be long or byte tensors