14.函数
Python函数
Last updated
Python函数
Last updated
如果在开发程序时,需要某块代码多次,但是为了提高编写的效率以及代码的重用,所以把具有独立功能的代码块组织为一个小模块,这就是函数。
定义函数的格式如下:
定义了函数之后,就相当于有了一个具有某些功能的代码,想要让这些代码能够执行,需要调用它
调用函数很简单的,通过 函数名() 即可完成调用
练一练:
要求:定义一个函数,能够输出自己的姓名和年龄,并且调用这个函数让它执行
使用def定义函数
编写完函数之后,调用函数
示例:
以调用上面的addto(a, b)函数为例:
要求:定义一个函数,完成前2个数完成加法运算,然后对第3个数,进行减法;然后调用这个函数
使用def定义函数,要注意有3个参数
调用的时候,这个函数定义时有几个参数,那么就需要传递几个参数
定义时小括号中的参数,用来接收参数用的,称为 “形参”
调用时小括号中的参数,用来传递给函数用的,称为 “实参”
所谓“返回值”,就是程序中函数完成一件事情后,最后给调用者的结果。
举个例子,定义一个求和的函数,最后的和的值返回给函数调用者。
想要在函数中把结果返回给调用者,需要在函数中使用return
如下示例:
如果一个函数返回了一个数据,那么想要用这个数据,那么就需要保存
保存函数的返回值示例如下:
函数根据有没有参数,有没有返回值,可以相互组合,一共有4种
无参数,无返回值
无参数,有返回值
有参数,无返回值
有参数,有返回值
此类函数,不能接收参数,也没有返回值,一般情况下,打印提示类的功能,使用这类的函数
此类函数,不能接收参数,但是可以返回某个数据,一般情况下,像采集数据,用此类函数
此类函数,能接收参数,但不可以返回数据,一般情况下,对某些变量设置数据而不需结果时,用此类函数
此类函数,不仅能接收参数,还可以返回某个数据,一般情况下,像数据处理并需要结果的应用,用此类函数
有时可能需要一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数,声明时不会命名。
基本语法如下:
加了星号(*)的变量args会存放所有未命名的变量参数,args为元组;而加**的变量kwargs会存放命名参数,即形如key=value的参数, kwargs为字典。
函数根据有没有参数,有没有返回值可以相互组合。定义函数时,是根据实际的功能需求来设计的,所以不同开发人员编写的函数类型各不相同
通过前面的学习知道一个函数可以调用其他函数。
如果一个函数在内部不调用其它的函数,而是自己本身的话,这个函数就是递归函数。
用lambda关键词能创建小型匿名函数。这种函数得名于省略了用def声明函数的标准步骤。
lambda函数的语法只包含一个语句,如下:
如下实例:
以上实例输出结果:
Lambda函数能接收任何数量的参数但只能返回一个表达式的值
匿名函数不能直接调用print,因为lambda需要一个表达式
函数作为参数传递
自己定义函数
作为内置函数的参数
结果:
小总结:
如果函数A中,调用了另外一个函数B,那么先把函数B中的任务都执行完毕之后才会回到上次 函数A执行的位置
本质是利用了元组
一个函数里面又调用了另外一个函数,这就是所谓的函数嵌套调用