Python 两种可变参数区别

本文详细介绍了Python中函数参数的两种主要形式:位置参数和关键词参数。特别地,*args用于接收任意数量的位置参数,它是一个元组;而**kwargs则用于接收不定数量的关键字参数,它是一个字典。通过示例函数`foo(a, b='commit', *c, **d)`和调用方式,展示了如何混合使用这两种参数,以及它们在实际编程中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Python 函数传递参数的方式有两种:

  1. 位置参数(positional argument)
  2. 关键词参数(keyword argument)

*args**kwargs 都是 Python 中的可变参数。

  1. *args 表示任何多个无名参数,允许用户发送一个非键值对的可变数量的参数列表给一个函数,它本质是一个 tuple
  2. **kwargs 表示关键字参数,允许用户将不定长度的键值对作为参数传递给一个函数,它本质上是一个 dict
  3. 同时使用 *args**kwargs 时,必须 *args 参数列要在 **kwargs 前。
def foo(a, b='commit', *c, **d):
    print(a, b, c, d)

foo(1, z='merge', b='clone', x=6, y=7)
foo(1, 2, 'push', 5, x='pull', y='chekcout')

结果如下:

1 clone () {'z': 'merge', 'x': 6, 'y': 7}
1 2 ('push', 5) {'x': 'pull', 'y': 'chekcout'}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值