Python基础 – 函数结构
函数结构
假设,一位农场主想要统计自己的圈地面积有多少,面对大大小小的多个圈地,用代码该如何实现呢?

可以设定⼀个计算⾯积的函数,多次调⽤。
农场主的圈地均为正方形,测量面积的函数编写好后,如代码所示。
第 1 到第 3 行代码,定义了一个名为 getArea 的函数,用于计算正方形面积并输出。
第 5 和第 6 行代码,调用这个函数,传入参数,就可以获得不同边长的正方形面积大小。
def getArea(length):
area = length*length
print(area)
getArea(13)
getArea(7)
计算好了圈地的⾯积,想要计算边长为 13 的圈地⾯积是不是大于 160,如果大于 160 就用来种⻄⽠。

如本例所示,程序虽然输出了⾯积大小,但是不能在函数外比较数据的大小。
这是因为函数内输出的数据,没有传递到函数外。这时候,我们就需要设置函数返回值。
函数返回值
def getArea(length):
area = length*length
return area
result = getArea(13)
print(result)
代码的作用:
在本例中,第 1 到第 3 行代码定义了一个名为getArea 的函数,其功能为计算正方形面积,并将结果返回。
第 5 行调用函数getArea()传入参数,将返回值赋值给变量result。
第 6 行代码,输出变量result。
return
在函数中,使⽤关键字return设置要返回的数据。
return** 位置一般都是在函数的末尾**,这样才能停止函数内的代码运行并将return后的值返回。

返回值
return后面是指定的返回值,返回值会返回到调用的地方。

变量
调用函数getArea(),传入参数 13,函数将运算结果 169 返回,并赋值给变量result。

代码小结
要定义函数和调用函数就需要这几个部分

在函数中使用关键字return时,要注意它的位置。
函数内部程序按照从上到下的顺序执行,如本例所示,函数内部有for循环,程序会等for循环执行完毕后,再执行return语句。
这样就可以得到传入列表中全部元素的累加值。

如果**return**** 的位置在函数的循环内部,函数内的循环只会执行一次。**
因为执行到 return 语句,函数就返回当时的值,并且停止此次调用。

函数经过内部代码的执⾏会产⽣⼀个结果,这个结果可以是⼀个具体的值也可以是多个值。
在本例中,函数计算出正⽅形的周长和面积,函数返回了两个值。
当函数同时返回多个值时,以逗号 “,” 隔开,并且返回值以元组的格式返回。

再来看这个案例。如图所示,左边的函数计算出正方形的面积,但是函数中没有return 语句。
此时,函数运行结束会返回一个空值(也就是None),作为返回值。

小练习
定义了一个叫做 “getSize” 的函数,该函数包含 1 个参数 length。
这个函数的功能是计算正方形周长和面积,并将两个结果作为函数的返回值返回。
现在分两次调用这个函数:
第一次传入参数 6 并输出结果。
第二次传入参数 8 并输出结果。
正方形周长 = 4*边长
正方形面积 = 边长* 边长
def getSize(length):
perimeter = 4*length
area = length*length
return perimeter,area
result = getSize(6)
print(result)
result = getSize(8)
print(result)
刚才农场主在函数中使用了print(),程序输出了圈地面积,但是不能在函数外比较数据的大小。
在函数内使用print()可以得到数据,但是这个数据不能在函数外使用。
在函数内使用return 可以将数据传递到函数外。

学完了函数结构中的每个部分,总结⼀下函数的结构。



参数
参数可以理解为函数的输入。
形参指定义函数时设置的参数名称,实参指调用函数时实际传递的数据。在本例中,num 为形参,8 为实参。
参数可以定义多个,也可以不定义。如果参数不止一个,多个参数之间用英文逗号 “,” 隔开。

函数体
函数体是函数内部实现特定功能的代码。就像做菜之前需要先想好具体的烹饪方式,等到做菜的时候再使用一样。
在本例中,函数体是为了计算一个数的二次幂(平方)和三次幂(立方)。

返回值
返回值可以理解为函数的输出。
就像对做菜的原材料进行烹饪加工,最后会得到我们想要的菜品一样,函数经过内部代码的执行也会产生一个结果。
这个结果可以是具体的值,也可以是一项具体的操作。

调用函数
在代码中使用我们已经定义好的函数,这个过程称为调用函数。
调用函数获得的返回值,可以用一个变量存储下来,就可以在函数外使用这个数据了。

代码小结
函数的结构

学习了函数结构后,还有一类函数就不得不提。
既然函数的使用顺序是先定义后调用,之前使用的很多函数, 比如print(),range(),append()等等,它们没有被我们定义,为什么还能直接被使用呢?
是因为,在 Python 中还有一类函数叫内置函数。

内置函数
和其他编程语言一样,Python也会将一些经常使用的函数预先写好,内置在编程环境中,提供许多常用的基本功能。
这些函数不需要我们去定义,可以直接使用,也被称为内置函数。

程序中使用内置函数也就是在调用函数。
例如,调用 len() 函数,它可以返回字符、列表、元组等长度或元素个数。

如图所示:
len为函数名;
() 为调用符号,在此处执行该函数中的代码;
列表["a","b","c","d"] 为实参。
程序将 len([“a”,“b”,“c”,“d”]) 的返回值 4 ,赋值给变量data;接着,输出变量data。

评论区