https://zhuanlan.zhihu.com/p/37239021 這里有詳細的解釋
注意:現(xiàn)在Python3這些東西都是自帶的,不需要額外導入庫田藐,
比如:
def add(x:int, y:int) -> int:
return x + y
print(add(1,2)) : 3
print(add("a","b")) : ab #不報錯荔烧,但是編譯器會給提示
以上代碼可以直接運行
像fastapi框架在這個基礎上提供了額外的校驗吱七,你如果輸入的類型不匹配,會拋出異常
用 : 類型 的形式指定函數(shù)的參數(shù)類型鹤竭,用 -> 類型 的形式指定函數(shù)的返回值類型踊餐。
特別要強調(diào)的是,Python 解釋器并不會因為這些注解而提供額外的校驗诺擅,沒有任何的類型檢查工作市袖。也就是說,這些類型注解加不加烁涌,對你的代碼來說沒有任何影響苍碟。
但這么做的好處是:
①讓別的程序員看得更明白
②讓 IDE 了解類型,從而提供更準確的代碼提示撮执、補全和語法檢查(包括類型檢查微峰,可以看到 str 和 float 類型的參數(shù)被高亮提示)
有關于:
def add(x:int, y:int) -> int:
return x + y
這種語法的詳細解釋
變量類型注解
a: int = 123
b: str = 'hello'