您的位置:首页 > 编程语言 > Python开发

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

2018-08-15 17:10 204 查看

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

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

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

  • 上面的*和**都是加在形参的前面,表示不定长参数,分别用来接收不带变量名的多余参数和带有变量名的多余参数,分别将它们以元组和字典的形式接收进函数。
  • 当在实参的前面加上*和**时,就意味着拆包。单个*表示将元组拆成一个个单独的实参,而两个*则表示将字典拆成一个个单独的带变量名的实参。
  • 实参前面加*或**,该实参一定不是普通的数据类型。*后面必须是元组实参,而**后面必须是字典实参。
阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐