\

Pythonは動的型付け言語であり、変数の型を事前に宣言する必要はありません。しかし、型ヒントという機能を使うことで、関数の引数や戻り値の型を明示的に示すことができます。

型ヒントの基本

型ヒントは、関数の引数や戻り値に期待する型を示すためのものです。以下に示すgreeting関数では、引数nameが文字列型であることを示し、戻り値も文字列型であることを示しています。

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

型チェックの強制

Pythonのランタイムは型ヒントを強制しませんが、型チェッカーやIDE、リンターなどのサードパーティツールで使用できます。また、propertyを使用して特定の属性に型制約を追加することも可能です。

class Foo(object):
    def _get_bar(self):
        return self.__bar

    def _set_bar(self, value):
        if not isinstance(value, int):
            raise TypeError("bar must be set to an integer")
        self.__bar = value

    bar = property(_get_bar, _set_bar)

このコードでは、Fooクラスのbar属性が整数であることを強制しています。

型エイリアス

型エイリアスは、複雑な型シグネチャを簡素化するために使用できます。

from collections.abc import Sequence

type Vector = list[float]

def scale(scalar: float, vector: Vector) -> Vector:
    return [scalar * num for num in vector]

このコードでは、Vectorという新しい型エイリアスを作成し、それを関数scaleの引数と戻り値の型として使用しています。

以上がPythonで型を強制する基本的な方法です。型ヒントと型チェックを適切に使用することで、コードの可読性と保守性を向上させることができます。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です