python学习感悟第6节

    本节学习的是函数的非固定参数的问题

首先了解了默认参数

def(x,y=2):   #默认参数即采用直接赋值的方式

默认参数有以下几个特点:调用参数的时候,默认参数非必须传递。默认参数的用途有默认安装值。

参数组

由此引出的问题是,当实参数目不固定时,如何定义形参。此时需引入参数组的定义。

#*[1,2,3,4,5]=*args,args=tuple([1,2,3,4,5])

其中*表示一种功能,*args表示接收N个位置参数转换成元组的方式

也可以接收字典

#**kwargs是将N个关键字参数转换成字典的方式

接下来是局部变量的内容:

程序执行的顺序是由上到下的。

 

 递归的三个特点:1、必须有一个明确的约束条件

2、每次进入更深一层递归时,问题规模相比上次递归都应该有所减少

3、递归效率不高

函数式编程

函数编程更接近数学运算,而函数是一种执行过程。

越高级的语言,越贴近计算,抽象程度高,执行效率低。

高阶函数---一个函数接收另一个函数作为参数,这种函数称之为高阶函数。

posted @ 2018-07-31 21:11  懵_安  阅读(118)  评论(0编辑  收藏  举报