python 函數參數:必選參數、默認參數、可變參數、關鍵字參數 和 命名關鍵字參數
在 Python 中定義函數,可以用必選參數、默認參數、可變參數、關鍵字參數和命名關鍵字參數 5種參數形式。
這 5 種參數都可以組合起來使用,但是注意,參數定義的順序必須是:必選參數、默認參數、可變參數/命名關鍵字參數和關鍵字參數。
def f1(a,b,c=0,*args,**kw):a,b 為必選參數
c=0 為默認參數
*args 為可變參數,可變參數允許你傳入 0個或任意個參數,這些可變參數在函數調用時自動組裝為一個tuple
**kw 為關鍵字參數,關鍵字參數允許你傳入 0個或任意個含參數名的參數,這些關鍵字參數在函數內部自動組裝為一個dict
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
def person(name,age,*,city='hongkong',job='coder'): print(name,age,city,job)person('scofff',212,city='homy',job='eatter')* 后面的兩個參數為命名關鍵字參數
對于關鍵字參數,函數的調用者可以傳入任意不受限制的關鍵字參數,至于到底傳入了哪些,就需要在函數內部通過 kw 檢查。 與關鍵字參數**kw不同,命名關鍵字參數需要一個特殊分隔符*,*后面的參數被視為命名關鍵字參數,如果沒有*號,那么后面的參數將被視為普通的未位置參數。命名關鍵字參數必須傳入參數名,而命名關鍵字參數可以有缺省值,這和位置參數不同。
新聞熱點
疑難解答