Pythonのisinstance
関数は、オブジェクトが指定したクラスまたはそのサブクラスのインスタンスであるかどうかをチェックするための便利なツールです。基本的な構文は次のとおりです。
isinstance(object, classinfo)
ここで、object
は型を調べたいオブジェクトを指定し、classinfo
はクラスやデータ型を指定します。object
がclassinfo
に指定されたクラスやデータ型に属していればTrue
を返し、そうでなければFalse
を返します。
例えば、以下のコードでは、data
がリストであるかどうかをチェックしています。
def process_data(data):
if isinstance(data, list):
total = sum(data)
return total
else:
return "Invalid input data"
この関数は、data
がリストであればその合計値を返し、そうでなければ"Invalid input data"
を返します。
また、isinstance
関数は、複数の型をチェックするためにも使用できます。以下のコードでは、data
がリストまたはタプルであるかどうかをチェックしています。
if isinstance(data, (list, tuple)):
isinstance
関数は、type
関数とは異なり、継承関係を考慮して型をチェックします。そのため、サブクラスまで考慮したい場合はisinstance
関数を使用すると良いでしょう。
以上がPythonのisinstance
関数の基本的な使い方とその特性についての説明です。この関数を理解し、適切に使用することで、Pythonプログラミングの幅が広がることでしょう。