型ヒントを使用した複数の戻り値の型の指定
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 サイトの他の関連記事を参照してください。