标签:strong sum **kwargs bsp 字典 学习python war 默认参数 连续
1 def my_len(s): #自定义函数只需要0个参数,接收参数 2 pass 3 return 0 #返回值 4 s = ‘我们一起学习python‘ 5 ret = my_len(s) #传递参数:传参,实际参数,实参 6 print(ret)
1 def my_sum(a, b): #位置参数 2 res = a+b 3 return res 4 ret = my_sum(2,1) #位置传参 5 ret1 = my_sum(b = 2, a = 1) #关键字传参 6 print(ret)
站在实参的角度上:
1.按照位置传参
2.按照关键字传参
3.混着用可以:但是必须先按照位置传参,再按照关键字传参,不能给不能给同一个变量传多个值
站在形参的角度上:
1.位置参数:必须传参数,且有几个参数传几个值
2.默认参数:可以不传,那么则默认,如果传了,则选择传的参数
1 def classmate(name,sex=‘男‘): 2 print(‘{} : {}‘.format(name,sex)) 3 4 classmate(‘python‘,‘男‘) 5 classmate(‘java‘) 6 classmate(‘php‘,‘女‘)
1 def func(*args, **kwargs): 2 print(args,kwargs) 3 func(1,2,3,4,5,a = ‘aaa‘,b = ‘bbb‘)#输出结果:(1, 2, 3, 4, 5) {‘a‘: ‘aaa‘, ‘b‘: ‘bbb‘}
1:*args接收的是按照位置传参的值,组织成一个元祖
2:**kwargs接收的是按照关键字传参的值,组织成一个字典
3:args必须在kwargs之前
1 def sum(*args): #接收的是按照位置传参的值,组织成一个元祖 2 n = 0 3 for i in args: 4 n+=i 5 return n 6 print(sum(1,2))
1 def func(*args): #站在形参的角度上,给变量加上*就是组合所有传来的值 2 print(args) 3 4 func(1,2,3,4,5) #输出结果:(1, 2, 3, 4, 5) 5 l = [1,2,3,4,5] 6 func(*l) #输出结果:(1, 2, 3, 4, 5) 7 #站在实参的角度上,给一个序列加上*就是将这个序列按照顺序打散,将其元素一个个传进去 8 #同理**配和kwargs
def func(): ‘‘‘ 这个函数实现了什么功能 参数1: 参数2: :return:是字符串或者列表的长度 ‘‘‘ pass
标签:strong sum **kwargs bsp 字典 学习python war 默认参数 连续
原文地址:https://www.cnblogs.com/rcat/p/9310134.html