分类
Python1

函数进阶

学习目标:
1.学习函数的4种参数类型
2.学习lambda表达式的使用方法
3.学习了解递归函数与嵌套函数的用法

在调用函数时,根据实际参数和形式参数匹配过程,可以将函数分为以下类型:
(1)位置参数:函数调用时,实参默认按位置顺序传递,需要个数和形参匹配,按位置传递的参数,称为:“位置参数”。
(2)命名参数:按照形参的名称传递参数,称为“命名参数”,也称“关键字参数”。
(3)默认值参数:定义函数时可以为某些参数设置默认值,这样这些参数在传递时就是可选的,称为“默认值参数”。注意:默认值参数必须放到位置参数后面。
(4)可变参数:可变参数指的是“可变数量的参数”,分两种情况:
4.1.*param(一个星号),将多个参数收集到一个“元组”中。 4.2.**param(两个星号),将多个参数收集到一个“字典”中。
注意:在带星号的“可变参数”后面增加新的参数,必须在调用的时候强制命名参数。

lambda表达式是一种简单的、在同一行中定义函数的方法。
(1).lambda表达式只允许包含一个表达式,不能包含复杂语句,
该表达式的计算结果就是函数的返回值。
(2).lambda表达式的基本语法如下:
lambda a1,a2,a3… : <表达式>
a1/a2/a3为函数的参数,<表达式>相当于函数体,运算结果
是:表达式的运算结果。

f = lambda a,b,c:a+b+c
print(f(2,3,4))
      #运行结果:9

嵌套函数:在函数内部定义的函数。

nonlocal关键字:用来声明外层的局部变量