一、【其实已经用过】可变参数
回顾系统自带的可变参数函数print
#系统自带的可变参数函数
print(1,2,"hello","刘金玉编程","编程创造城市",end="$$$")
如果我们想要开始自定义可变参数,只需要在函数参数的前面加上一个星号*
在函数体内部,默认情况下,带有*的参数传入的变量,我们输出的时候是元组类型。
如果要输出可变参数,由于数元组类型,我们往往针对元组类型的方式进行输出,参数可以用for循环来进行输出。
二、可变参数+普通参数 结合用法1
1.可变参数在开头的位置的情况
说明一下:如果可变参数在函数参数的开头的位置,普通参数在函数的第二个位置以后,那么在调用函数的时候,我们必须要采用关键字参数的用法,否则函数调用直接报错,报缺少调用参数的错误。
调用举例:
def add2(*a,b):
result=0
for v in a:
result+=v
result+=b
return result
print()
print(add2(1,2,3,4,5,b=10))
2.可变参数在中间的情况
注意:可变参数前面的参数变量,在调用函数的时候传参,传入的结果是可变参数前面的这些参数都分别作为前面参数的参数变量。可变参数后面的变量,必须使用关键字参数进行传入。
#定义可变参数在中间的情况
def add3(a,*b,c):
result=a
for v in b:
result+=v
result*=c
return result
#调用可变参数在中间的情况
print(add3(1,2,3,4,c=5))
可变参数在中间的情况的注意点:
注意:可变参数前面的参数变量,在调用函数的时候传参,传入的结果是可变参数前面的这些参数都分别作为前面参数的参数变量。可变参数后面的变量,必须使用关键字参数进行传入。
#定义可变参数在中间的情况
def add3(a,*b,c):
result=a
for v in b:
result+=v
result*=c
return result
#调用可变参数在中间的情况
print(add3(1,2,3,4,c=5))
三、总结强调
1.掌握可变参数的函数定义
2.掌握可变参数函数的几种不同情况的用法:可变参数在开头、可变参数在中间、可变参数在末尾。
本节源代码:
#系统自带的可变参数函数 print(1,2,"hello","刘金玉编程","编程创造城市") def add1(*a): for v in a: print("【"+str(v)+"】",end=" ") pass add1(1,2,3,34,564) def add2(*a,b): result=0 for v in a: result+=v result+=b return result print() print(add2(1,2,3,4,5,b=10)) #定义可变参数在中间的情况 def add3(a,*b,c): result=a for v in b: result+=v result*=c return result #调用可变参数在中间的情况 print(add3(1,2,3,4,c=5))
执行结果:
1 2 hello 刘金玉编程 编程创造城市 【1】 【2】 【3】 【34】 【564】 25 50