72 函数参数——位置参数(必备参数)


位置参数也称必备参数,是必须按照正确的顺序传到函数中,即调用时的数量和位置必须和定义时是一样的。
在这里插入图片描述

1、数量必须和定义时一致

在调用函数时,指定的实际参数的数量必须与形式参数的数量一致,否则将抛出TypeError异常,提示缺少必要的位置参数。
在这里插入图片描述
从异常信息中可以看出,抛出的异常类型为TypeError,具体是指“fun_bmi()方法缺少一个必要的位置参数weight”。

2、位置必须与定义时一致

在调用函数时,指定的实际参数的位置必须与形式参数的位置一致,否则将产生以下两种结果。

抛出TypeError异常

抛出异常的情况主要是因为实际参数的类型与形式参数的类型不一致,并且在函数中,这两种类型还不能正常转换。在这里插入图片描述

产生的结果与预期不符

在调用函数时,如果指定的实际参数与形式参数的位置不一致,但是它们的数据类型一致,那么就不会抛出异常,而是产生结果与预期不符的问题。
在这里插入图片描述
由于调用函数时,传递的实际参数的位置与形式参数的位置不一致时,并不会总是抛出异常,所以在调用函数时一定要确定好位置,否则产生Bug,还不容易被发现。

3、正确调用

在这里插入图片描述
调用时,数量和位置一定要和函数定义时一致。