实参是在调用函数时()出现的外界的实际的值
形参不能再函数外部直接使用
一、实参的两种形式
实参是调用函数时()中传入的参数
1.位置实参
def a(a):
print(a)
a(1)#得到返回值:1
2.关键字实参
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def a(a,b):
print(a,b)
a(b=3,a=5)
#得到返回值:5 3
二、形参的五种形式
形参就是定义函数时()中定义的函数
1.位置形参
def a(a,b):
print(a,b)
a(3,5)
#得到返回值:3 5
2.默认形参
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def a(a,b):
print(a,b)
a(3,5)
#得到返回值:3 5
3.可变位置形参
def a(a,b=5,*args):
print(a,b,args)
a(3,4,6,7,8)
#得到返回值:3 4 (6, 7, 8)
#变长位置函数是将多余的位置函数整合为一个元组输出出来,其前面的所有参数必须由位置实参输入进入,遵从位置形参在默认形参前的规定。
def a(a,b=5,*args):
print(a,b,args)
a(3,4,*[1,2,3])
#得到返回值:3 4 (1, 2, 3)
#输入的单列集合类型前加*号是将其打散输入进元组,否则作为一个值输入
4.关键字形参
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def a(a,b=5,*args,c,d):
print(a,b,args,c,d)
a(3,4,*[1,2,3],c=9,d=10)
#得到返回值:3 4 (1, 2, 3) 9 10
#由*分割开来,后面的就是关键字形参,由关键字实参传入值
5.可变关键字性参
def a(a,b=5,*args,c,d,**kwargs):
print(a,b,args,c,d,kwargs)
a(3,4,*[1,2,3],c=9,d=10,e=100,g=200)
#的阿斗返回值:3 4 (1, 2, 3) 9 10 {'e': 100, 'g': 200}
#在形参最后**加定义,传入所有剩余的关键字实参