5

2 タプルを返す関数がありますが、オプションで 3 タプルを返します。これを型注釈でどのように記述すればよいでしょうか?

例えば:

from typing import Tuple

def example(i):
    # type: (int) -> Tuple[int, int, <what to put here?>]
    if i < 10:
       return (i, i+1, 1)
    else:
       return (i, i+1)

以下のように Union を使用できますが、かなり面倒です。

# type: (int) -> Union[Tuple[int, int], Tuple[int, int, int]]
4

1 に答える 1