Pythonの組み込み関数であるisinstance
は、オブジェクトが特定の型またはクラスのインスタンスであるかどうかを判定するために使用されます。この関数は、オブジェクト指向プログラミングにおける型チェックの一部として非常に有用です。
isinstance関数の基本的な使い方
isinstance
関数は、2つの引数を取ります。第一引数はチェックしたいオブジェクト、第二引数はそのオブジェクトが属していることを確認したい型またはクラスです。
isinstance(object, classinfo)
この関数は、第一引数のオブジェクトが第二引数の型またはクラスのインスタンスである場合、True
を返します。
isinstance関数の活用例
以下に、isinstance
関数の基本的な使用例を示します。
# 文字列の場合
print(isinstance("apple", str)) # True
# 整数の場合
print(isinstance(10, int)) # True
# リストの場合
print(isinstance([1, 2, 3], list)) # True
また、isinstance
関数は、第二引数にタプルを取ることができます。この場合、オブジェクトがタプルの要素のいずれかの型またはクラスのインスタンスであるかどうかを判定します。
# 文字列または整数の場合
print(isinstance("apple", (str, int))) # True
# 浮動小数点数またはリストの場合
print(isinstance("apple", (float, list))) # False
注意点
Pythonのbool
型はint
型のサブクラスであり、True
やFalse
がint
型かどうかをisinstance
関数で判定するとTrue
が返ります。これはPythonの設計上の理由で、bool
型が0と1の値を持つ特殊な整数として扱われるためです。
まとめ
Pythonのisinstance
関数は、オブジェクトが特定の型またはクラスのインスタンスであるかどうかを判定するための強力なツールです。この関数を理解し、適切に使用することで、Pythonプログラミングの効率と柔軟性を向上させることができます。.