Python 3.5 から実装されている機能で、関数を定義するときに引数や戻り値の型を注記(アノテーション)する
Type Hint という機能があります。
ドキュメント
次の例のように、引数の後ろには「:」をつけて型を書き、戻り値は行末の「:」の前に「->」を付けて型を書きます。
このように定義しておくと、help関数などでその関数が想定しているデータ型を確認できます。
def add_sample(x: int, y: float) -> float:
return x + y
help(add_sample)
"""
Help on function add_sample in module __main__:
add_sample(x:int, y:float) -> float
"""
注意としては、あくまでもこれは注記で、本当にその型しか受け付けなくなったり、その方の戻り値を返すことを保証したりしないことです。
サンプルの例で言えば、float同士を受け取っても普通に計算しますし、文字列を渡せば結合します。
print(add_sample(2.5, 3.7))
# 6.2
print(add_sample("Type ", "Hint"))
# Type Hint
あくまでも可読性のための機能ですが、
便利に使える場面は多そうなので今後積極的に使っていこうと思います。
個人的な話になりますが、エンジニア?としてのキャリアの初期にJavaやExcel VBAばかり触っていた影響か、
実は静的型付け言語のほうが好きだったりします。(Pythonは動的型付け)
Python自体はかなり気に入っているので別に良いのですが。