5.18 Day14

一.递归函数
(1)什么是递归函数:自己调用自己的函数时递归函数

(2)递归函数有回的过程,有两种情况可以触发:
(1) 当最后一层函数全部执行结束的时候,有触底反弹的过程(回马枪),回到上层函数空间的调用处
(2) 遇到return 返回值,直接返回上层空间的调用处

(3)函数在运行的时候,需要内存开辟空间才可以,这个空间叫做栈帧空间

(4)递归:
(1)去的过程就是不停的开辟栈帧空间,在回的时候,就是在不停的释放栈帧空间,
递归函数就是不停的开辟和释放栈帧空间的一个完整的过程
(2)回的时候有两种触发的机制,要么是最后一层函数空间全部执行完毕,要么是遇到return,都会触底反弹(回马枪).
(3)写递归函数时候,必须给与跳出的条件,如果递归的层数过多,不推荐使用,容易内存溢出或者蓝屏
(4)递归调用每一层空间都是独立的个体,独立的副本,资源不共享,可以通过return来完成值的传递.

二.数学模块
(1).ceil() 向上取整操作
(2.)floor() 向下取整操作
(3).pow() 计算一个数值的N次方(结果为浮点数) (对比内置pow)
(4).sqrt() 开平方运算(结果浮点数)
(5).fabs() 计算一个数值的绝对值 (结果浮点数) (对比内置abs)
(6).modf() 将一个数值拆分为整数和小数两部分组成元组
(7).copysign() 将参数第二个数值的正负号拷贝给第一个 (返回一个小数)
(8).fsum() 将一个容器数据中的数据进行求和运算 (结果浮点数)(对比内置sum)
(9).圆周率常数 pi


三.随机模块 random
(1).random() 获取随机0-1之间的小数(左闭右开) 0 <= x < 1
(2).randrange() 随机获取指定范围内的整数(包含开始值,不包含结束值,间隔值) 同range
(3).randint() 随机产生指定范围内的随机整数(可以取到最大值)
(4).uniform() 获取指定范围内的随机小数(左闭右开) 1<=x < 3的小数

猜你喜欢

转载自www.cnblogs.com/cloudlzh/p/12912787.html