Python课堂9--Python函数参数列表

参数列表

分类:
1.必须参数
2.默认参数
3.关键字参数
4.不定长参数
*必须参数在前,默认参数/不定长参数 在后
实参:required argument
形参:parameter

必须参数

# 先定义一个函数,函数名为asd,括号里加入一个参数a。
def asd(a)
print(a) #打印参数a。

对于这种函数来说,如果我们想调用它的话,直接写asd(),()内传一个参数就可以了。
如果不传参数的话,会报错。

def asd(a)#括号内a为形参
print(a)
asd(2)#括号内为实参

默认参数
此时无需传参数,可直接调用,然后运行。

def asd(a=9)#定义一个函数名为asd的函数,a默认为9
print(a)
asd()

如果想要传输参数15,可进行:

def asd(a=9)
print(a)
asd(15)

如果我们想定义函数的参数中再加一个参数b:
这样一来,15将会赋给b,而a仍旧默认为9。

def asd(b,a=9)
print(b,a)
asd(15)

如果将形参中的a=9和b调换位置,则输出结果将会报错,所以,必须参数必须传参,默认参数一定在必须参数后面。
关键字参数
如果正常赋值的话,name会是5,而age会是张三,我们将参数进行指定,指定参数名后将不分顺序,正常运行。

def asd(name,age):
    print(name,age)
#asd(5,"张三")
asd(age = 5,name = "张三")

如果我们将形参name和age赋予默认值,然后我们只给它一个指定值:

def asd(name="建国",age=18):
    print(name,age)
asd(age=20)

输出结果为:建国 20
不定长参数
我们定义一个参数show_info,若想输出多条实参,我们将形参改为*a即可。
结果以元组形式输出。

def showInfo(*a):
    print(a)
showInfo("张三丰",108,"男",456)

*a是用来接收字典的
参数排列顺序
关键字参数和必须参数长相一样,而必须参数必须在默认参数前,所以我们把必须参数,默认参数,不定长参数他们之间的关系:
先写一个必须参数a,然后写一个默认参数b=12,再写一个不定长参数
c

def s(a,b=12,*c):
    print(a,b,c)
s(2,3)#输出结果为:2 3 ()
s(2,3,4,5,6,7)#输出结果为:2  3  (4,5,6,7)

如果将*c移动到第二个位置

def s(a,*c,b=12):
    print(a,b,c)
s(2,3)#输出结果为:2  12  (3,)
s(2,3,4,5,6,7)#输出结果为:2  12  (3,4,5,6,7)

如果将*c移动至a前,将会报错。
一般情况下,我们习惯将不定长参数放在最后,如果将a变为关键字参数的话,只能再句尾赋值,即:s(2,3,4,5,6,a=7)
输出结果:7 12 (2, 3, 4, 5, 6)

猜你喜欢

转载自blog.csdn.net/weixin_44362227/article/details/86544779