today::エンジニアに憧れる非エンジニア

今のところは、エンジニアとは言えないところの職種です。しかしエンジニア的なものの考え方に興味津津。

Pythonあれこれ 2021-01-31 - 関数アノテーション

概要

「Head First Python 第2版」を進めていった中で考えたことの記録です。

Head First Python 第2版 ―頭とからだで覚えるPythonの基本

Head First Python 第2版 ―頭とからだで覚えるPythonの基本

  • 作者:Paul Barry
  • 発売日: 2018/03/24
  • メディア: 単行本(ソフトカバー)

Pythonにおける関数アノテーション

def search4vowels(phrase:str) -> set:
    """指定された単語内の母音を返す。"""
    vowels = set('aeiou')
    return vowels.intersection(set(phrase))

↑関数アノテーションが記述された関数の例search4vowels()。意味は以下。

  • search4vowelsの引数phraseには、文字列が与えられることが期待されている
    • 引数定義における、仮引数名の後の:型名
  • search4vowelsは集合を返す
    • 引数定義の後の-> 戻り値の型
# 上記search4vowels()がimportされた状態で

help(search4vowels)
# => Help on function search4vowels in module __main__:
# =>
# => search4vowels(phrase: str) -> set
# =>     指定された単語内の母音を返す。

↑組み込み関数のhelp()により、上記search4vowels()関数の関数アノテーションを出力した例。