首页 理论教育 Python函数定义与调用

Python函数定义与调用

时间:2023-11-16 理论教育 版权反馈
【摘要】:程序如下:2.函数调用程序通过函数调用来进行函数的控制转移和相互间数据的传递,并对被调函数进行展开执行,Python要求函数先定义、再调用,函数调用的一般形式为:函数调用时传递的参数是实参,实参可以是变量、常量或表达式。图5-3调用函数执行被调用函数,为函数体内的变量分配内存单元,执行函数体内语句。若程序中无return语句,则执行完被调用函数后回到主调函数。

Python函数定义与调用

1.函数定义

在Python中用户可以定义一个自己想要实现某种功能的函数,自定义函数的一般形式为:

函数定义时要注意:

(1)使用关键字def进行函数的定义,行尾加冒号,函数体必须缩进;

(2)函数名的命名规则和变量的命名规则一样,即只能是由字母、数字和下划线组成,不能以数字开关,并且不能跟关键字重名;

(3)函数的参数必须放在圆括号中,可以是零个、一个或者多个,各个参数之间用逗号分隔;

(4)return语句是可选的,它可以在函数体内任何地方出现,表示函数调用执行到此结束。如果没有return语句,会自动返回None;如果有return语句,但是return后面没有表达式也返回None。

【例5-1】定义函数,求两个数的最大值。

程序如下:

2.函数调用

程序通过函数调用来进行函数的控制转移和相互间数据的传递,并对被调函数进行展开执行,Python要求函数先定义、再调用,函数调用的一般形式为:

函数调用时传递的参数是实参,实参可以是变量、常量或表达式。当实参个数超过一个时,用逗号分隔。对于无参函数,调用时实参表列为空,但括号()不能省略。

【例5-2】编写一个求阶乘值的函数,求输入数的阶乘。

分析:以编写阶乘函数为例,说明函数的调用过程。

程序如下:

如图5-1~图5-7所示为该程序运行、函数调用的过程,浅色箭头代表刚执行过的语句,深色箭头代表即将执行的语句。

(1)开始运行,从程序的第一行代码开始(见图5-1)。(www.xing528.com)

图5-1 开始运行程序

(2)执行第一行,遇到定义的函数f时(需要注意,函数f代码块中的语句并不是立即就执行的,而是等到函数被程序调用时才会执行),先跳过函数体,执行第7行的主程序(见图5-2)。

图5-2 执行主程序

(3)输入n=5后,将主调函数的实参传递给对应的形参(见图5-3)。

图5-3 调用函数

(4)执行被调用函数,为函数体内的变量分配内存单元,执行函数体内语句(见图5-4)。

图5-4 执行函数f

(5)执行函数体内语句(见图5-5)。

图5-5 执行函数体内语句

(6)在函数f体内遇到return语句时,返回主调函数并带回返回值,释放形参及被调用函数中各变量所占用的内存单元。若程序中无return语句,则执行完被调用函数后回到主调函数(见图5-6)。

图5-6 返回主程序

(7)返回到主调函数继续执行后续语句,直到程序结束(见图5-7)。

图5-7 继续执行主程序

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈