Python の関数は柔軟な型の引数を受け入れる場合があります。または、柔軟な型の値を返す場合があります。現在、そのような関数の良い例を思い出すことができないため、以下のおもちゃの例でそのような関数がどのように見えるかを示しています。
Sphinx のドキュメント表記法を使用して、そのような関数のドキュメント文字列を記述する方法を知りたいです。以下の例では、引数は または のいずれstr
かint
です。同様に、 または のいずれstr
かを返しますint
。
docstring の例を示しました (デフォルトの Sphinx 表記と、Sphinx のナポレオン拡張によって理解される Google 表記の両方)。これが柔軟な型を文書化する正しい方法であるかどうかはわかりません。
スフィンクスのデフォルト表記:
def add(a, b):
"""Add numbers or concatenate strings.
:param int/str a: String or integer to be added
:param int/str b: String or integer to be added
:return: Result
:rtype: int/str
"""
pass
スフィンクス ナポレオン Google表記:
def add2(a, b):
"""Add numbers or concatenate strings.
Args:
a (int/str): String or integer to be added
b (int/str): String or integer to be added
Returns:
int/str: Result
"""
pass
Sphinx によって処理されることを意図した docstring でパラメータまたは戻り値の複数の型を表現する正しい方法は何ですか?