Python - 函數(shù)和模塊的特殊屬性__annotations__(參數(shù)聲明注解)
在Python語(yǔ)言中,使用變量之前不需要聲明其類(lèi)型,直接賦值即可創(chuàng)建變量,變量初始類(lèi)型取決于等號(hào)右側(cè)表達(dá)式的值的類(lèi)型。
創(chuàng)建之后,變量的類(lèi)型可以隨時(shí)發(fā)生變化,但在任何時(shí)刻,每個(gè)變量都有確定的類(lèi)型。
很多從其他語(yǔ)言轉(zhuǎn)過(guò)來(lái)的朋友很不習(xí)慣這樣的方式,還是習(xí)慣于聲明變量和參數(shù)的類(lèi)型。
雖然Python不支持聲明,但是允許在定義函數(shù)時(shí)使用“注解”的形式來(lái)標(biāo)注形參和返回值的類(lèi)型,但這種注解的形式并不會(huì)對(duì)形參進(jìn)行任何約束和檢查,在實(shí)際調(diào)用函數(shù)時(shí),即使實(shí)參不符合形參的類(lèi)型標(biāo)注,一樣能夠正常傳遞。
EX:

在Python中,函數(shù)會(huì)維護(hù)一個(gè)特殊屬性__annotations__,這是一個(gè)字典,其中的“鍵”是被注解的形參名,“值”為注解的內(nèi)容。
使用時(shí)并不要求注解的內(nèi)容是Python中的類(lèi)型,可以是任意內(nèi)容。
EX:

參考鏈接:https://blog.csdn.net/dongfuguo/article/details/105103472

浙公網(wǎng)安備 33010602011771號(hào)