引數如何在python中明確型別?

lcc發表於2021-09-11

引數如何在python中明確型別?

想要在一堆資料中找出我們想要的檔案,如果所有檔案混在一起會比較難查詢。這就需要我們在放置檔案的初始就進行歸類,後期查詢的時候才不會困難重重。在python中很多小夥伴弄不清函式里的引數,會選擇置之不理。這樣對於我們後期的查詢不是很方便,今天小編就為大家帶來在python中明確函式引數型別的辦法,我們先從引數型別開始講起,具體如下:

在呼叫函式時,通常會傳遞引數,函式內部的程式碼保持不變,針對不同的引數處理不同的資料。

有位置傳參、關鍵字傳參、預設值引數、多值引數等。

1、引數傳遞

形參:定義 函式時的 引數變數

實參:呼叫 函式時,使用的引數變數

2、位置實參

按照引數位置,依次傳遞引數,這是最普通的方式。

3、關鍵字實參

如果不想嚴格按照順序傳遞引數,也可以按關鍵字傳遞。

4、預設引數


定義函式時,可以給 某個引數賦值一個預設值,具有預設值的引數就叫做預設引數

python中沒有型別宣告的語句,所以經常搞不清要給函式傳什麼型別的引數,比如下面經典的歧義函式:

def add(x, y):
    return x+y

在沒有任何說明的情況下,很難搞清楚x和y分別表示什麼,可以是兩個數值或字串:

print(add(2, 4))
print(add("w", "t"))

使用__annotations__註解

在函式形參的名字後面加上“:註解”,可以實現函式註解【1】功能:

def add(x:int, y:int):   
    return x+y

對於較新的python版本可以直接使用函式的__annotations__屬性檢視註解內容:

print(add.__annotations__)

將會得到一個包含add的引數名稱和對應型別說明的字典:

{'x': <class 'int'>, 'y': <class 'int'>}


相信經過引數型別的學習,早進一步使用函式引數時,我們已經可以知道可以傳遞哪些型別的引數了。這裡把__annotations__註解引數的方法分享給大家,希望能對大家傳遞引數有所幫助。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2331/viewspace-2831821/,如需轉載,請註明出處,否則將追究法律責任。

相關文章