首頁 > 後端開發 > Python教學 > 如何使用型別提示在 Python 中指定多個回傳類型?

如何使用型別提示在 Python 中指定多個回傳類型?

Barbara Streisand
發布: 2024-11-25 08:22:11
原創
961 人瀏覽過

How to Specify Multiple Return Types in Python with Type Hints?

使用型別提示指定多個傳回型別

使用可以傳回不同資料型態(例如清單或布林值)的函數時,使用類型提示正確指定預期的回傳類型至關重要。這有助於提高程式碼可讀性並啟用類型檢查。

使用 Python 3.10 語法

從 Python 3.10 開始,指定多個返回類型的首選方法是使用管道 ( |) 運算符建立聯合類型。語法如下:

def foo(id) -> list | bool:
    # ...
登入後複製

在此範例中,foo() 函數可以傳回列表或布林值。

對於早期Python,使用打字.Union版本

對於3.10之前的Python版本,您可以使用typing.Union類別建立一個聯合類型:

from typing import Union

def foo(client_id: str) -> Union[list, bool]:
    # ...
登入後複製

強制類型提示

要注意的是,Python中不強制執行類型提示,這表示不執行運行時類型檢查。它們主要用作程式碼開發和文件期間的描述性工具。

範例

考慮以下程式碼:

>>> def foo(a: str) -> list:
...     return "Works"
... 

>>> foo(1)
'Works'
登入後複製

在此範例中,儘管該函數被註解為傳回一個列表,但它會傳回一個字串。但是,類型註釋仍然在__annotations__ 屬性中設定:

>>> foo.__annotations__ 
{'return': <class 'list'>, 'a': <class 'str'>}
登入後複製

其他資源

有關類型提示的更多信息,請參閱以下資源:

  • PEP 483:模式提示
  • Python 3.5 中的類型提示是什麼?

以上是如何使用型別提示在 Python 中指定多個回傳類型?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板