11-函数进阶-参数类型

发布时间 2024-01-13 16:52:43作者: ljh-

def func(a,b):

print(a,b)

func(1,2) # 实参的个数和形参的个数必须要保持一致

func(1)

func(1,2,3)

func()

位置参数

默认参数,在调用函数的过程中,多次调用传入的实参一致,可以将参数定义为默认参数

def func(a,b=1): # 语法要求:如果形参中包含位置参数和默认参数,位置参数要放在最前面

print(a,b)

func(10) # 没有传入参数b的数据值,则使用默认值

func(10,20) # 传入了b的数据值,则使用传入的,而不是默认值

func(10,20,30)

可变长度参数:在定义形参的过程中,不能分析出到底有几个不确定的数据

def func(*args,**kwargs): # * 用来接收所有的实参,并且变为了元组类型交给a保存

print(args,kwargs) # ** 用来接收所有的关键字实参,并且变为了字典类型交给了b保存

# args和kwargs只是一种规范,就是一个形参的名字。

func(1)

func(1,3)

func(1,3,4,4)

func(1,3,4,4,4)

func(aa=1,b=2,c=3)

func(1,2,x=1,y=2)

获取多个数的和

形参?未知的数据?有,但是个数不确定,写可变长度参数

返回值?结果? 有 和

def get(*args,**kwargs):

如何累加所有的参数和?

定义一个变量 用来保存和

sum = 0
for i in args: # args拿到的是一个元组类型数据
    sum+=i
# 循环字典,先获取字典的映射关系,包含键也包含值,
for key,value in kwargs.items(): # value 值
    sum+=value
return sum

print(get(1,2,3,4,5,6,7,a=11,b=12))

python在设计print函数的时候,形参是可变类型参数

def print(*args, sep=' ', end='\n', file=None):

\n 换行符

end的意思代表结束,输出结束 换行

输出之后 加逗号

print(1,end=',') # 1,2

print(2)