加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴散
  • 作品版權(quán)保護
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

python的參數(shù)詳解

10/07 08:25
660
閱讀需 4 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

參數(shù)類別

實參:實際上的參數(shù)
形參:形式上的參數(shù)

在這里插入圖片描述
如上圖,實際輸入的參數(shù)為實參,在函數(shù)中占位置的參數(shù)為形參。

實參類型

1、位置實參

定義:調(diào)用的時候,需要根據(jù)位置傳遞實際參數(shù)

在這里插入圖片描述

如圖,Lion / Dog占了兩個位置,期望是傳遞實參建議按照這個順序,不然,即時能夠接受,也不能正確的處理。(Lion的名字跟Dog的名字,因為傳遞錯誤,將導(dǎo)致不能正確識別)

2、關(guān)鍵字實參

定義:調(diào)用的時候,需要指定形參名稱

在這里插入圖片描述
如圖,在調(diào)用的時候直接賦值,這種傳遞方式一目了然。

3、默認值實參

定義:在函數(shù)中,直接賦值給參數(shù)

在這里插入圖片描述

如圖,直接在函數(shù)定義一個默認值,在調(diào)用的時候,可以不傳遞,當(dāng)然也可以傳遞。

形參類型

形參類型分為非關(guān)鍵字形參*args, 關(guān)鍵字形參**kwargs,先上代碼體驗一下,:

def func(*args, **kwargs):
    print("-------------------------")
    print('args is {}'.format(args))
    print('kwarg is {}'.format(kwargs))
    try:
        print('firstArgs is {}'.format(args[0]))
        print('firstKwarg is {}'.format(kwargs["a"]))
    except:
        pass

if __name__ == "__main__":

    func(1, 2) # 元組
    func(a=1, b=2, c=3, d=4) # 字典
    func(1, 2, a=1, b=2) # 元組+字典

在這里插入圖片描述

如上,我們了解了非關(guān)鍵字形參*args, 關(guān)鍵字形參**kwargs的用法。

非關(guān)鍵字形參:用于接收不含關(guān)鍵字的輸入數(shù)據(jù)(如:1,2,3),會以元組的形式進入函數(shù);

非關(guān)鍵字形參:用于接收含有關(guān)鍵字的輸入數(shù)據(jù)(如:key=1中的key),會以字典的形式進入函數(shù);

注意事項:
1、*args, **kwargs可單獨存在
2、*args, **kwargs同時存在時,函數(shù)定義的形參,*args形參必須在前
3、*args, **kwargs同時存在時,傳遞實參的順序,*args實參必須在前
4、取值方式:
*args可通過列表取值方式,如:args[0]
**kwargs可通過字典取值方式,如:kwargs[“key”]
5、參數(shù)擴展:可以跟普通形參一起使用,如:func(a,b,c=“name”,*args, **kwargs)

相關(guān)推薦

電子產(chǎn)業(yè)圖譜