python3 函数的参数

函数的参数
形参(函数定义时) + 实参(函数调用时)
形参:形式参数 在函数的定义处定义的参数,比如def func(参数1, 参数2, 参数3...)
普通参数(位置参数), 默认参数,普通收集参数(*args), 关键字收集参数(*kwargs), 命名关键字参数
        实参:实际参数  在函数调用处定义的参数,比如 func(参数1, 参数2, 参数3...)
普通参数(位置参数),关键字参数
函数定义处
def func(参数1, 参数2, 参数3...):
pass
函数调用处
func(参数1, 参数2, 参数3...)

#普通形参(位置形参)
#函数定义处:普通形参(位置形参)
def func(n,m):
    print("%d x %d = %d"%(n, m , n*m))
#函数调用处:普通实参(位置实参)
func(2,3)   #2 x 3 = 6
 
  
#默认形参
#函数定义处:默认形参
def func(n=2,m=3):
    print("%d x %d = %d"%(n, m , n*m))
#函数调用处:普通实参(位置实参)
func()  #2 x 3 = 6  #使用默认参数
func(4,5)  #4 x 5 = 20  #自定义参数
 
  
#普通收集形参(*args)
# 函数定义处:普通收集形参,通用写法:*args
def func(*args):
    print(args)  #(1, 2, 3, 4, 5)  输出的是一个元组
    total = 0
    pro = []
    for i in args:
        total += i
        pro.append(str(i))
    print('+'.join(pro)+'='+str(total))  ##1+2+3+4+5=15
#函数调用处:普通实参(位置实参) 
func(1, 2, 3, 4, 5)
 
  
#关键字收集形参(**kwargs)
# 函数定义处:关键字收集形参,通用写法:**kwargs
def func(**kwargs):
    print(kwargs)  #{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} 输出的是一个字典
    total = 0
    pro = []
    for v in kwargs.values():
        total += int(v)
        pro.append(str(v))
    print('+'.join(pro)+'='+str(total))  ##1+2+3+4+5=15
#函数调用处:关键字实参
func(a = 1, b = 2, c = 3, d = 4, e = 5)
#命名关键字形参
#(1) # 函数定义处:命名关键字形参,通用写法:在*后边的形参,在进行函数调用时都需要通过关键字实参传入。 def func(a, b, * , c, d): print("%d+%d+%d+%d=%d"%(a, b, c, d,a+b+c+d)) #函数调用处:c 和 d 需要使用关键字实参传入 func(1, 2, c = 3, d = 4) #1+2+3+4=10 #(2) # 函数定义处:命名关键字形参,通用写法:在普通收集参数(*args)和关键字收集参数(**kwargs)中间的参数,在进行函数调用时都需要通过关键字实参传入。 def func(*args, a, b, **kwargs): print(args, a, b, kwargs) # 函数调用处:a 和 b 需要使用关键字实参传入 func(1, 2, a=3, b=4, c=5, d=6) #(1, 2) 3 4 {'c': 5, 'd': 6}

 

转载于:https://www.cnblogs.com/chenhaodong123/p/10588084.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值