Python的函數(shù)具有非常靈活的參數(shù)形態(tài),既可以實現(xiàn)簡單的調(diào)用,又可以傳入非常復雜的參數(shù)。
默認參數(shù)一定要用不可變對象,如果是可變對象,程序運行時會有邏輯錯誤!
要注意定義可變參數(shù)和關鍵字參數(shù)的語法:
*args是可變參數(shù),args接收的是一個tuple;
**kw是關鍵字參數(shù),kw接收的是一個dict。
以及調(diào)用函數(shù)時如何傳入可變參數(shù)和關鍵字參數(shù)的語法:
可變參數(shù)既可以直接傳入:func(1,2,3),又可以先組裝list或tuple,再通過*args傳入:func(*(1,2,3));
關鍵字參數(shù)既可以直接傳入:func(a=1,b=2),又可以先組裝dict,再通過**kw傳入:func(**{'a':1,'b':2})。
使用*args和**kw是Python的習慣寫法,當然也可以用其他參數(shù)名,但最好使用習慣用法。
命名的關鍵字參數(shù)是為了限制調(diào)用者可以傳入的參數(shù)名,同時可以提供默認值。
定義命名的關鍵字參數(shù)在沒有可變參數(shù)的情況下不要忘了寫分隔符*,否則定義的將是位置參數(shù)。
以上內(nèi)容為大家介紹了python的參數(shù)形態(tài),希望對大家有所幫助,如果想要了解更多Python相關知識,請關注IT培訓機構(gòu):千鋒教育。