defに付いてる->ってどういう意味?[Python]

7月 27, 2020

Kaggleのコードを読んでいると以下のような記法を見つけた.

def greeting(name: str) -> str:
return 'Hello ' + name

ん? -> ってなんぞ?

調べてみると型に関する注釈をつける機能だということが分かった.

上の例だと,name: str で入力がstringであること,-> str. で関数greetingの出力がstringであることを示す.

関数に直接作用する記法ではなく,今のところあくまで可読性を上げるためのもののようだ.

しかし,今後のアップデートで型にあっていなかった場合にエラーをだす機能も追加されそうな気もするので,押さえておいた方がよいと思う.

ちなみにPython3.5からこの機能が追加されたらしい.

www.python.org

Python

Posted by vastee