当前位置:   article > 正文

Python——函数的参数和返回值_可变参数_python 返回值的数量可变

python 返回值的数量可变

在 Python 的函数中,可以定义可变参数。可变参数指的是在函数定义时,该函数可以接受任意个数的参数,参数的个数可能是1个或多个,也可能是0个。可变参数有两种形式,参数名称前加星号(*)或者加两个星号(**)

语法格式:

def funname(formal_args,*args,**kwargs):
	statements
	return expression
  • 1
  • 2
  • 3

在上面的函数定义中, formal_args 为定义的传统参数,代表一组参数,*args** kwargs可变参数。函数传入的参数个数会优先匹配 formal_args 参数的个数,* args元组的形式保存多余的参数,** kwargs字典的形式保存带有指定名称形式的参数,这种参数也称为关键字参数。

调用函数的时候,如果传人的参数个数和 formal_args 参数的个数相同,可变参数会返回空的元组或字典;如果传人参数的个数比 formal_args 参数的个数多,可以分为如下两种情况:

  • 如果传入的参数没有指定名称,那么* args以元组的形式存放这些多余的参数。
  • 如果传入的参数指定了名称,如 score =90,那么** kwargs以字典的形式存放在这些被命名的参数。

例 6-9 可变参数的应用:

#ex0609.py
def showmessage(name,*p_info):
    print("姓名",name)
    for e in p_info:
        print(e,end=",")
    return

#调用showmassage函数
showmessage("Kate")
print("-----------------------")
showmessage("Kate","male",18,"Dalian")
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

例 6-10 关键字数的应用:

#ex0610.py
def showmessage(name,*p_info,**scores):
    print("姓名",name)
    for e in p_info:
        print(e,end=",")
    for item in scores.items():
        print(item,end=" ")
    print()
    return

#调用showmassage函数
showmessage("Kate","male",18,"Dalian")
print("-----------------------")
showmessage("Kate","male",18,"Dalian",math=86,pe=92,eng=88)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/261278
推荐阅读
相关标签
  

闽ICP备14008679号