函数的参数类型

发布时间 2024-01-13 21:05:28作者: 罗科-ROCCO
def funcing(a,b):
print(a,b)
funcing(10,20) # 实参必须与形参保持一样

# 默认参数:在调用函数的过程中,多次调用传入的实参一致,可以将参数定义为默认参数
def funcing(a,b=2): # 语法要求:如果形参中包含位置参数和默认参数,位置参数必须放在前面
print(a,b)
funcing(10) # 没有传入b的数据值,所以使用默认参数的值
funcing(10,30) # 传入了数据b的值,所以使用传入的数据值
# funcing(10,30,40) # 传入了多余函数中定义的参数值,所以会报错

# 可变长度参数:在定义形参的过程中,不能分析出到底有多少个不确定的数据
def funcing(*args,**kwargs):
# *用来接收所有实参,并且变化为了元组数据传给a保存
# **用来接收所有关键字实参,并且变化为了字典类型传给b保存
# *args和**kwargs只是一种规范,就是一个形参的名字
print(args,kwargs)
funcing(1,2,3)
funcing(1,23,34,45,56,67,78,89,90,100)
funcing(a=1,b=2,c=3,d=4)
funcing(0,1,a=10,b=200)

print('**********')
# 获取多个数的和
# 分析:形参是未知的数据。有,但是个数不确定。写可变长度参数
# 分析:返回值是有的,结果是和
def getnou(*args,**kwargs):
sum = 0 # 如何累加所有参数和?定义一个变量保存和。
for i in args: #args保存的是元组数据类型,遍历元组数据
sum = sum + i # 累加每个参数的值
# 循环字典,先获取的是字典的映射关系,包含键也包含值
for key,value in kwargs.items(): # kwargs保存的是字典数据类型,遍历字典数据
sum = sum + value # 累加每个参数的值
return sum # 返回和
cc = getnou(1,2,3,4,5,6,7,8,9,10,a=11,b=12,c=13,d=14) # 调用函数,传入实参,获取函数的返回值
print(cc) #打印函数的返回值

'''
python在设计print函数的时候,形参是可变类型的参数
\n:表示换行符
end:表示结束,输出完成后结束接着换行
def print(*args,**kwargs,sep='',end='\n',file=None):
'''
print(1,end=",,") # 输出 1,5 end=""表示不换行
print(5)