python中函数参数的定义与使用

python函数参数使用

这篇博文讲的更详细

  • 位置实参
    定义、调用函数时形参与实参通过位置进行参数传递

  • 关键字实参
    调用函数时,通过键值对将实参与形参对应

  • 默认值
    定义函数时,对形参指定默认值,无传递实参使用默认值,有则使用实参

  • 任意数量实参
    格式为*arg,调用传递实参时以元组格式传入形参,用于知道用户输入信息但不知道具体实参数量

  • 任意数量关键字实参
    格式为**kwargs,传递关键字实参,以字典形式传入,用于不知道用户输入信息以及数量的情形

  • 参数顺序

    • 定义函数时顺序为:位置参数—*args—默认参数—**kwargs
      *args和默认参数可以调换位置
    • 调用函数时顺序为:位置参数—*args—关键字参数—**kwargs
  • 解包

    • 调用函数时*可以进行解包,将可迭代对象解包为离散参数
    • **可以对字典进行解包,得到字典的value解包参数,*dict可以得到key解包参数
def para_test(a, b, c, *args, d=1, e=2, f=3, **kwargs):
	print('[a, b, c, d, e, f] =', str([a, b, c, d, e, f]))
	print('arg' + str(args))
	print('kwargs' + str(kwargs))
	
	para_test(1, 2, 3, 'a', 'b', g='g', h='h')
	
	# [a,b,c,d,e,f] =  [1, 2, 3, 1, 2, 3]
	# arg('a', 'b')
	# kwargs{'g': 'g', 'h': 'h'}  

	args = ['a', 'r', 'g', 's']
	kwargs = {'aa': 1, 'rr': 2, 'gg': 3, 'ss': 4}
	para_test(1, 2, 3, *args, **kwargs)
	# [a, b, c, d, e, f] = [1, 2, 3, 1, 2, 3]
	# arg('a', 'r', 'g', 's')
	# kwargs{'aa': 1, 'rr': 2, 'gg': 3, 'ss': 4}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值