欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python函數(shù)元數(shù)據(jù)實(shí)現(xiàn)為一個(gè)參數(shù)指定多個(gè)類(lèi)型

 更新時(shí)間:2024年02月09日 10:12:25   作者:星云  
這篇文章主要介紹了Python函數(shù)元數(shù)據(jù)實(shí)現(xiàn)為一個(gè)參數(shù)指定多個(gè)類(lèi)型方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Python函數(shù)元數(shù)據(jù)為一個(gè)參數(shù)指定多個(gè)類(lèi)型

誒呦圖丟了

加上引號(hào)就好了

def foo(value: 'str|int|float|list|tuple'):
    print(value)


foo(None)

Python函數(shù)元數(shù)據(jù)使用筆記

由于Python是一門(mén)解釋型語(yǔ)言,在Python中定義變量不需要指明類(lèi)型,所以當(dāng)我們?cè)诰帉?xiě)函數(shù)時(shí),可以為函數(shù)的參數(shù)添加一些額外的信息來(lái)指明變量類(lèi)型,以方便其他人使用。

因此,可以使用函數(shù)參數(shù)注解來(lái)提示使用者傳入變量的類(lèi)型。

例如:

def Test(a:int,b:float)->float:
    return a*b
 
 
print(Test(1,2.7))
 
print(Test.__annotations__)

Result:

如圖,函數(shù)的注解表示:輸入的變量a為int型,輸入的變量b為float型,函數(shù)的返回值為float型。

Python解釋器不會(huì)對(duì)這些注解添加任何語(yǔ)義,也不會(huì)使用注解對(duì)傳入的變量進(jìn)行類(lèi)型檢查,而在函數(shù)運(yùn)行時(shí)與沒(méi)有加注解之前的效果也沒(méi)有任何的差距。

然而,給函數(shù)添加注解對(duì)函數(shù)的使用者和閱讀源碼的人來(lái)說(shuō)幫助很大。

有的第三方工具和框架可能會(huì)對(duì)這些注解添加語(yǔ)義。同時(shí),這些注解也會(huì)出現(xiàn)在文檔中。

Result:

函數(shù)的注解儲(chǔ)存在函數(shù)的__annotations__屬性中,盡管注解的使用方法可能有很多種,但是注解的主要用途還是文檔,因?yàn)樵赑ython中沒(méi)有類(lèi)型聲明,通常僅僅通過(guò)閱讀源碼很難知道應(yīng)該傳遞什么樣的參數(shù)給函數(shù),此時(shí)使用注解就能給使用者更多的提示,使使用者可以正確的使用函數(shù)。

Reference:

https://python3-cookbook.readthedocs.io/zh_CN/latest/c07/p03_attach_informatinal_matadata_to_function_arguments.html

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論