ホームページ > バックエンド開発 > Python チュートリアル > Python の型ヒントで複数の戻り値の型を指定するにはどうすればよいですか?

Python の型ヒントで複数の戻り値の型を指定するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-25 15:44:11
オリジナル
598 人が閲覧しました

How Can I Specify Multiple Return Types in Python Type Hints?

型ヒントを使用した複数の戻り値の型の指定

Python では、関数は入力パラメーターまたは内部ロジックに基づいて異なるデータ型を返すことがあります。期待される戻り値の型を明確に示すために、型ヒントを使用できます。

Union 型の使用

Python 3.10 以降、「|」は演算子を使用して共用体型を作成できます。これにより、複数の戻り値の型を指定できるようになり、次の構文が有効になります。

def foo(id) -> list | bool:
    ...
ログイン後にコピー

これは、関数 foo がリストまたはブール値を返すことができることを示します。

Using Typing。 Union

3.10 より前の Python バージョンの場合、typing.Union

from typing import Union

def foo(id) -> Union[list, bool]:
    ...
ログイン後にコピー

型ヒントの制限

Python の型ヒントは実行時に強制されないことに注意することが重要です。これは、型注釈はコード開発中のガイドとして機能しますが、実際の戻り値の型を保証するものではないことを意味します。

デモ:

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

>>> foo(1)
'Works'
ログイン後にコピー

この例では、整数が引数として渡されます。リストを返すように注釈が付けられた関数 foo。型アノテーションに違反しているにもかかわらず、関数は文字列を返し、正常に実行されます。

ただし、関数の __annotations__ 属性は、アノテーションで指定されている期待される戻り値の型を反映します:

>>> foo.__annotations__
{'return': <class 'list'>, 'a': <class 'str'>}
ログイン後にコピー

For型ヒントの詳細については、PEP 483 および Python 3.5 の型ヒントとは?? を参照してください。この機能は Python 3.5 以降で利用可能であることに注意してください。

以上がPython の型ヒントで複数の戻り値の型を指定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート