← トップ
15 / 20

15. 型ヒント(type hint)

CONCEPT

型ヒントtype hint(タイプヒント)。変数や関数の型を注釈するは、変数や関数に「このデータは文字です」「この関数は数値を返します」という注釈をつける仕組みです。名前にふりがなをつけるようなもので、コードを読みやすくします。

📍 使い道: チーム開発で「この関数は文字列を返す」ことを明示
COMMON MISTAKES — よくある間違い
型ヒントを実行時チェックだと思う型ヒントは「注釈」であり、実行時にエラーになりません。mypy等のツールでチェックします。
複雑な型を書きすぎる最初は str, int, List[int] 程度で十分です。Union, Optional 等は必要になってから使いましょう。
コードを1行ずつ実行してみよう
example.pyPython
1total = calculate_total(1500, 3)# calculate_total(1500, 3) を呼び出し。1500 * 3 = 4500 が返る
2formatted = format_price(total)# format_price(4500) を呼び出し。f"¥{4500:,}" = "¥4,500" が返る
3print(formatted)# print(formatted) で "¥4,500" を表示
« 次の行 » ボタンを押して実行を開始
VARIABLES
実行すると変数の状態が表示されます
型ヒントは「この変数には何が入るか」をコメント的に書くものです。 def greet(name: str) -> str: なら「nameは文字列、返り値も文字列」という意味。 実行には影響しませんが、コードを読む人にとって分かりやすくなります。
📚 読み方ガイド
コード読み方
price: intprice という変数は整数(int)です、という注釈
-> intこの関数は整数(int)を返します、という注釈
Optional[dict]dict か None のどちらか、という意味
list[str]文字列のリスト、という意味
KEY POINT

型ヒントtype hint(タイプヒント)。変数や関数の型を注釈するでは、price: int は「priceという変数は整数(int)です」という注釈。-> int は「この関数は整数を返します」という注釈。Optional[dict] は dictかNoneのどちらか。list[str] は文字列のリスト。

確認問題
1この関数は何を受け取り何を返すか
def get_product_name(product_id: str) -> str: products = {"A001": "りんご", "A002": "みかん"} return products[product_id]
product_id として文字列(str)を受け取り、文字列(str)を返します。例: get_product_name("A001") は "りんご" を返します。formattedフォーマット済み(英: formatted)として扱われます。
2Optional[dict] はどういう意味か
「辞書(dict)が返るかもしれないし、None(何もない)が返るかもしれない」という意味です。データが見つからない場合は None を返す関数でよく使われます。
3-> bool は何を表しているか
def is_in_stock(product_id: str) -> bool: stock = {"A001": 5, "A002": 0} return stock.get(product_id, 0) > 0
この関数が真偽値(bool = True または False)を返すことを表しています。在庫があれば True、なければ False を返します。
CHEAT SHEET — まとめ
3行で分かる
  • 変数や関数に「これは文字・これは数値」と注釈をつける
  • 名前にふりがなをつけるようにコードを読みやすくする
  • 実行は止まらない(注釈のみ・人とツールへの目安)
型ヒント