Python函数调用时的实参与函数定义时的形参前加单星号(*)和双星号(**)

不定长参数*args和**kwargs(形参前面的*和**)

  • *args和**kwargs都是函数定义时的形参,用来接收未知个数的实参(可以为0个)。
  • *args将多余的变量以元组的形式接收。
  • **kwargs将多余的命名参数(即带有变量名的实参)以字典的形式接收,其中字典的键为命名参数的变量名,值为命名参数的值。

拆包(实参前面的*和**)

  • 上面的*和**都是加在形参的前面,表示不定长参数,分别用来接收不带变量名的多余参数和带有变量名的多余参数,分别将它们以元组和字典的形式接收进函数。
  • 当在实参的前面加上*和**时,就意味着拆包。单个*表示将元组拆成一个个单独的实参,而两个*则表示将字典拆成一个个单独的带变量名的实参。
  • 实参前面加*或**,该实参一定不是普通的数据类型。*后面必须是元组实参,而**后面必须是字典实参。
  • 8
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值