站长在线Python精讲:在Python函数中参数传递的位置参数详解

    时间: 浏览:129次  来源:站长在线
欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是《在Python函数中参数传递的位置参数详解》。本文的主要内容有:实参和形参数量必须与定义时一致和实参和形参位置必须与定义时一致。

欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是《Python函数中参数传递的位置参数详解》。本文的主要内容有:实参和形参数量必须与定义时一致和实参和形参位置必须与定义时一致。


位置参数,有时也称必备参数,指的是必须按照正确的顺序将实际参数传到函数中,换句话说,调用函数时传入实际参数的数量和位置都必须和定义函数时保持一致。

1.实参和形参数量必须与定义时一致

在调用函数时,指定的实际参数的数量必须与形式参数的数量一致,否则将抛出TypeError异常,提示缺少必要的位置参数。如:

#可写函数说明
def printme( str ):
   "打印任何传入的字符串"
   print (str)
   return
 
# 调用 printme 函数,不加参数会报错
printme()

运行结果为:

Traceback (most recent call last):
  File "D:\Python\Python310\Doc\000.py", line 8, in <module>
    printme()
TypeError: printme() missing 1 required positional argument: 'str'
>>> 

2.实参和形参位置必须与定义时一致

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

2.1、抛出TypeError异常

抛出异常的情况主要是因为实际参数的类型与形式参数的类型不一致,并且在函数中,这两种类型不能正常转换。如:

def div (height,width):
    return height*width/2
print(div("站长在线",3))

运行结果:

Traceback (most recent call last):
  File "D:\Python\Python310\Doc\000.py", line 3, in <module>
    print(div("站长在线",3))
  File "D:\Python\Python310\Doc\000.py", line 2, in div
    return height*width/2
TypeError: unsupported operand type(s) for /: 'str' and 'int'
>>> 

2.2、产生的结果与预期不符

站长在线提醒你:由于调用函数时,传递的实际参数的位置与形式参数的位置不一致时并不会总是抛出异常,所以在调用函数时一定要确定好位置,否则产生Bug,还不容易被发现。

例如,设计一个求梯形面积的函数,并利用此函数求上底为 4cm,下底为 8cm,高为 5cm 的梯形的面积。但如果交互高和下低参数的传入位置,计算结果将导致错误:

def area(upper_base,lower_bottom,height):
    return (upper_base+lower_bottom)*height/2
print("正确结果为:",area(4,8,5))
print("错误结果为:",area(4,5,8))

运行结果为:

正确结果为: 30.0
错误结果为: 36.0
>>> 

到此为止,站长在线为你讲解的《在Python函数中参数传递的位置参数详解》。本文的主要内容有:实参和形参数量必须与定义时一致和实参和形参位置必须与定义时一致。已经讲解完毕了。

在下一个知识点,站长在线就来讲解《在Python函数中理解参数传递的关键字参数》。关注站长在线,学习Python不迷路!欢迎你对站长在线进行关注,评论,点赞,分享、转发!

本文地址:https://www.olzz.com/pythonweizhicanshu.html
码字不易,打个赏呗
站长在线小编感谢你的支持!
站长在线站长一对一技术培训,100元两个小时
阿里云虚拟主机1G空间,120元一年
香港、美国虚拟主机100元一年,1000元永久
腾讯云双十一0.4折起,2核8G5M三年仅700元,2核4G8M三年仅198元

猜你喜欢

站长在线Python教程精讲:在Python函数中的全局变量详解

欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是《Python中的局部变量详解》。本文的主要内容有:什么是全局变量、在函数外部定义的变量是全局变量、在函数内部定义中添加global关键词后变成全局变量。

2022-01-10  分类:Python教程  浏览:61次


站长在线Python教程精讲:在Python函数中的局部变量详解

导读:欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是《在Python函数中的局部变量详解》。本文的主要内容有:变量的作用域的概念、局部变量的概念、局部变量的举例。

2022-01-06  分类:Python教程  浏览:88次


Python常用英语及用法

站长在线站长,准备系统的学习Python知识,但是对我来说,英语实在是太差了,当然我知道的是,不仅仅我,很多人在学习Python的时候,也是不知道这些英语单词的意思与用法的,在这里站长在线站长就把这些英语整理出来,把英语以及中文意思、用法一起贴出来,让大家一起来学习。

2022-01-02  分类:Python教程  浏览:84次


站长在线Python精讲:Python中函数的返回值

导读:欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是《Python中函数的返回值》。本文的主要内容有:函数的返回值的含义、函数设置返回值的作用、return语句位置与多条 return语句的总结。

2021-12-29  分类:Python教程  浏览:104次


站长在线零基础Python完全自学教程22:在Python中函数的参数传递

欢迎你来到站长学堂,学习站长在线出品的在线课程《零基础 Python完全自学教程》今天给大家分享的是第22课《在Python中函数的参数传递》。本文是一个大课程分成了下面5节小课程:在Python函数中理解形式参数和实际参数、在Python函数中参数传递的位置参数详解、在Python函数中的关键字参数详解、在Python函数中的默认参数详解、在Python函数中的可变参数详解。

2021-12-26  分类:Python教程  浏览:110次


站长在线零基础Python完全自学教程21:Python中函数的创建和调用

欢迎你来到站长学堂,学习站长在线出品的在线课程《零基础 Python完全自学教程》今天给大家分享的是第21课《 Python中函数的创建和调用》。本文的主要内容有:在Python中函数的定义与创建、在Python中函数的调用详解。

2021-12-26  分类:Python教程  浏览:105次


站长在线Python精讲:在Python函数中的可变参数详解

导读:欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是《在Python函数中的可变参数》。本文的主要内容有:可变参数的定义、带一个星号*的可变参数和带两个星号**的可变参数。

2021-12-25  分类:Python教程  浏览:135次


站长在线Python精讲:在Python函数中的默认参数详解

欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是《在Python函数中的默认参数详解》。本文的主要内容有:默认参数的概念和默认参数的示例、默认参数不能设置可变对象。

2021-12-24  分类:Python教程  浏览:112次


站长在线Python教程精讲:在Python函数中的关键字参数详解

导读:欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是《在Python函数中的关键字参数详解》。本文的主要内容有:关键字参数的含义和关键字参数的应用举例。

2021-12-23  分类:Python教程  浏览:127次


站长在线Python精讲:在Python函数中参数传递的位置参数详解

欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是《在Python函数中参数传递的位置参数详解》。本文的主要内容有:实参和形参数量必须与定义时一致和实参和形参位置必须与定义时一致。

2021-12-22  分类:Python教程  浏览:130次