51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

Python基础 – 函数的参数

必选参数

函数的一种参数类型,在调用这个函数的时候必须传入数据的参数。

传递实参时的顺序

在传递必选参数时,形参会按照定义的顺序依次接收数据。

调用函数时第一个参数传递给name,第二个参数传递给pet。

缺少实参

在调用函数时,缺少或超出对必选参数的传递会导致程序错误。

也就是说,在函数中定义了多少个必选参数就要传递多少个实参。

关键字传递

当我们忘记了传递顺序时,可以利用"形参名=实参名"的方式传递实参。

这样以关键字传递实参的形式,简称为关键字实参。

小练习

定义一个函数getArea,设定参数width与height分别接收矩形的宽高,计算矩形的面积并返回。

调用该函数,用关键字的形式传递参数宽为5、高为3,并按照"矩形的面积为xx"的格式输出结果。

def getArea(width, height):
    return width*height

ret = getArea(width=5, height=3)
print(f"矩形的面积为{ret}")

若定义一个计算圆形面积的函数,设定参数为半径(radius)与圆周率(pi)。

多数情况下,圆周率都会近似为3.14。

若pi不是必选参数,设其默认为3.14。只在需要修改圆周率时传递数据,函数调用起来会方便很多。

必选参数定义起来虽然简单,在调用函数时经常会因为缺少实参造成程序错误。

接下来学习给形参设置默认值。

默认值参数

def getArea(radius, pi=3.14):
    ret = radius * radius * pi
    return ret

ret1 = getArea(2)
print(ret1)
ret2 = getArea(2, 3.14159)
print(ret2)

代码的作用

定义一个函数getArea,根据传递的半径与圆周率,计算圆的面积并输出。

在第1行,定义形参radius与pi,并为pi设定默认值为3.14。

在第5行,调用函数getArea,并传递数据2。

在第7行,调用函数getArea,并传递数据2与3.14159。

关键字

一个关键字,def函数定义的关键字 ,是define的缩写。

括号
括号与冒号,这是函数定义的固定格式。

逗号
一个逗号,用来分割多个参数。

必选参数
一串字母radius,必选参数。

必选参数要定义在默认值参数之前。

默认参数
一串字母pi,默认值参数。

默认参数可以有任意个,但必须定义在必选参数之后(若必选参数存在)。

等号
一个等号,赋值符号。

默认值
一组数据,为参数pi设置默认值。

若在调用函数时,没有为参数pi传递实参,参数pi默认为3.14。

传递一个实参
调用函数,只为必选参数传递整数2。

因为pi没有接收到参数,所以pi将使用默认值3.14。

传递两个实参
调用函数,传递参数2与3.14159。

此时pi接收到的实参数据3.14159会覆盖默认值3.14。

代码小结
当我们定义一个默认值参数时就需要这几个部分

目前学习了两种类型的参数,必选参数与默认值参数。这两种参数形式涵盖了80%以上的函数使用。
在定义不同的参数时,需要注意避免一些常见的错误。

1.定义参数的顺序

在定义函数时,定义形参的顺序是:1,必选参数;2,默认参数。
当有必选参数和默认参数的时候,必选参数必须写在默认参数的前面,否则程序会出错

2.参数名避免使用无意义的字母

在传递实参给函数时,若忘记定义顺序可以使用"形参名=实参"的方式。
但如果定义的形参名是诸如a,abc这样无意义的名字,会减少代码可读性,容易混淆。
所以设定参数名时,尽量使用有意义的名称。

最后,对这两种参数的差异性做一个总结。

赞(0)
未经允许不得转载:工具盒子 » Python基础 – 函数的参数