程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

python中使用 *args 和 **kwargs 來調用函數的區別

編輯:Python

在定義函數時如果參數個數不固定的時候,我們希望能夠使用一個特殊的字符串表示可變長度的參數。那麼你或許會碰到兩種可變長度的參數,即*args和**kwargs。

*args和**kwargs都是不定長參數收集機制,這裡我們總結一下*args和**kwargs調用的區別和注意事項。

區別1:

*args 將傳入函數的參數打包成元組(tuple)給函數體調用

**kwargs 將傳入函數的參數打包成字典(dict)給函數體調用

注意1:

如果函數形參qi沒有加前面的*,那就是一個對象,如果加了*args,表示可以傳入多個實參進去,傳入的參數被收集到一個元組args這個對象中,如果對這個元組對像使用*操作,表示解開,返回的是元組中的多個對象!!

注意2:

如果同時使用args,*args和**kwargs,必須是args,*args,**kwargs順序


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved