【python】總結下幾種參數得用法---可變參數,關鍵字參數,命名關鍵字參數

一。默認參數

默認參數,注意一點:必選參數在前,默認參數在後,否則Python的解釋器會報錯

二。可變參數

可變參數,意思就是傳入參數的個數是可變的,可以是1個,2個,無數個;傳入參數類型爲list或者tuple;

舉例,給定一組數字a,b,c……,請計算a2 + b2 + c2 + ……,由於參數個數不確定,所以我們可以把 這組數據作爲一個數組或者元祖傳進來,但傳參時必須要組裝出一個list或者tuple,如下圖


但如果使用可變參數,就會簡易不少,只需參數前面加個*號,如下圖

但如果已經存在一個數組了,例如li=[1,2,3]。傳入的時候可以在數組前面加個*號即可。如:sum(*li)  #14

*li表示把li這個數組所有元素作爲可變參數傳進去

三。關鍵字參數

關鍵字參數允許你傳入0個或任意個含參數名的參數,0意味着關鍵字參數可填可不填,這些關鍵字參數在函數內部自動組裝爲一個dict。例如註冊學生檔案,姓名與年齡是必填的,另外如果有興趣愛好也可以填, 沒有就不填。這時就會用到關鍵字參數了,只需前面加兩個*號就可以


,例如已存在一個dic={'sports':'football','eat':'humberger'}

調用方式可以爲:student('wangjincheng',27,sport=dic['sports'],eat=dic['eat'])

上面這個比較麻煩,換一種簡易的調用方式,如下圖:


四。命名關鍵字參數

關鍵字參數,對於傳入的參數名無法限制。如果想對參數名有限制,就用到了命名關鍵字參數。

命名關鍵字參數需要一個特殊分隔符**後面的參數被視爲命名關鍵字參數;如下圖,參數名只能傳入sports,傳入其他參數名就會報錯;




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章