Python中 "->"符號的意義
這是一個叫做返回值注解的符號。它通過允許將元數據附加到描述其參數和返回值的函數來擴展該功能。
例如:
def f(ham:str, eggs:str = 'eggs') -> str:
pass
1
2
表示返回值類型應該為str。(在此也可以不限於數據類型,也可以是具體字符串比如說‘Egg Number’,甚至是任何表達式等等)
我們可以用函數對象的__annotations__屬性獲取。
>>> print(f.__annotations__)
{'ham': <class 'str'>, 'eggs': <class 'str'>, 'return': <class 'str'>}
1
2
這個東西有什么好處呢?
一個是非常方便允許使用預期類型注釋參數; 然后很容易編寫一個裝飾器來驗證注釋或強制正確類型的參數。
另一個是允許特定於參數的文檔,而不是將其編碼到docstring中。
原文鏈接:https://blog.csdn.net/qq_44781495/article/details/89605850