- typing.Optionalを使用する方法: typingモジュールのOptionalを使うと、戻り値が指定した型またはNoneであることを示すことができます。例えば、以下のような関数があるとします。
from typing import Optional
def get_name() -> Optional[str]:
# 名前を取得する処理
# 名前が存在しない場合はNoneを返す
pass
この場合、関数の戻り値の型ヒントにOptional[str]を指定することで、戻り値が文字列またはNoneであることを示しています。
- Unionを使用する方法: typingモジュールのUnionを使うことでも、nullableな戻り値の型を指定することができます。例えば、以下のような関数があるとします。
from typing import Union
def get_age() -> Union[int, None]:
# 年齢を取得する処理
# 年齢がわからない場合はNoneを返す
pass
この場合、関数の戻り値の型ヒントにUnion[int, None]を指定することで、戻り値が整数またはNoneであることを示しています。
以上のように、OptionalまたはUnionを使用することで、型ヒントでnullableな戻り値を指定することができます。これにより、コードの可読性が向上し、利用者が戻り値の型を正しく理解できるようになります。