Python 3における型ヒントと複数の戻り値の指定
Python 3では、型ヒントを使用して関数の引数や戻り値の型を明示的に指定することができます。複数の戻り値を持つ関数の場合、その型を指定する方法について解説します。
複数の戻り値の型を指定する方法
複数の戻り値を持つ関数の場合、typingモジュールのTupleを使用してそれぞれの戻り値の型を指定します。以下に具体的な例を示します。
from typing import Tuple def get_name_and_age() -> Tuple[str, int]: name = "Alice" age = 30 return name, age name, age = get_name_and_age() print(name, age)
この例では、get_name_and_age関数が文字列と整数のタプルを返すことを明示的に示しています。関数を呼び出し、戻り値をそれぞれの変数に代入して出力することで、型ヒントが正しく機能していることを確認できます。
さらなる例
さらに、複数の異なる型の戻り値を持つ関数の例を示します。
from typing import Tuple def calculate_circle(radius: float) -> Tuple[float, float]: area = 3.14 * radius**2 circumference = 2 * 3.14 * radius return area, circumference area, circumference = calculate_circle(5.0) print(area, circumference)
この例では、円の面積と円周の長さを計算し、それぞれの戻り値の型をfloatとして指定しています。関数を呼び出して正しい結果が得られることで、型ヒントの有用性を確認できます。
複数の型ヒントを組み合わせる
最後に、複数の型ヒントを組み合わせて複雑な戻り値を指定する方法を示します。
from typing import Tuple, List def process_data(data: List[int]) -> Tuple[List[int], float]: squared_data = [x**2 for x in data] average = sum(data) / len(data) return squared_data, average data = [1, 2, 3, 4, 5] squared, avg = process_data(data) print(squared, avg)
この例では、整数のリストを受け取り、そのリストの要素を二乗した結果と平均値を戻り値として返す関数を定義しています。戻り値の型を適切に指定することで、コードの可読性と保守性を向上させることができます。
Python 3では、型ヒントを使用して関数の戻り値の型を指定することができます。複数の戻り値の型を指定する場合、typingモジュールのTupleを使用します。以下は、複数の戻り値を持つ関数の型ヒントを指定する例です。
“`python
from typing import Tupledef get_coordinates() -> Tuple[float, float]:
x = 10.5
y = 20.0
return x, yresult = get_coordinates()
print(result) # (10.5, 20.0)
“`この例では、get_coordinates関数は2つの浮動小数点数を返すことが期待されており、型ヒントとしてTuple[float, float]が使用されています。関数の戻り値が指定された型と一致しない場合、型ヒントを使用することで型の整合性をチェックすることができます。