Python中函数的参数可以分为位置参数,关键字参数和默认参数。下面我们一一来讲解。
位置参数,有时也称必备参数,指的是必须按照正确的顺序将实际参数传到函数中,换句话说,调用函数时传入实际参数的数量和位置都
必须和定义函数时保持一致。
实参和形参数量必须一致
在调用函数,指定的实际参数的数量,必须和形式参数的数量一致(传多传少都不行),否则 Python 解释器会抛出 TypeError 异常,并提示缺少必要的位置参数。
例如
例如,设计一个求梯形面积的函数,并利用此函数求上底为 4cm,下底为 3cm,高为 5cm 的梯形的面积。但如果交互高和下低参数的传入位置,计算结果将导致错误:
defarea(upper_base,lower_bottom,height): return(upper_base+lower_bottom)*height/2 print("正确结果为:",area(4,3,5)) print("错误结果为:",area(4,5,3))
推荐学习《python教程》
运行结果为:
正确结果为:17.5 错误结果为:13.5
关键字参数是指使用形式参数的名字来确定输入的参数值。通过此方式指定函数实参时,不再需要与形参的位置完全一致,只要将参数名写正确即可。
#定义一个函数 defgirth(width,height): print("width:",width) print("height:",height) return2*(width+height) #传统调用函数的方式,根据位置传入参数 print(girth(3.5,4.8)) #根据关键字参数来传入参数 print(girth(width=3.5,height=4.8)) #使用关键字参数时可交换位置 print(girth(height=4.8,width=3.5)) #部分使用关键字参数,部分使用位置参数 print(girth(3.5,height=4.8))
默认参数 调用函数时没有给拥有默认值的形参传递参数,该参数可以直接使用定义函数时设置的默认值。
定义带有默认值参数的函数,其语法格式如下:
def函数名(...,形参名=默认值): 代码块
#为两个参数指定默认值 defsay_hi(name="孙悟空",message="欢迎来到PHP中文网"): print(name,",您好") print("消息是:",message)原文来自:https://www.py.cn
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容