Python isinstance() 関数

Python 内置函数Python 組み込み関数


説明

isinstance() 関数は、オブジェクトが既知の型であるかどうかを判断するもので、type() に似ています。

isinstance() と type() の違い:

  • type() はサブクラスを親クラスの型とは見なさず、継承関係を考慮しません。

  • isinstance() はサブクラスを親クラスの型と見なし、継承関係を考慮します。

2つの型が同じかどうかを判断する場合は、isinstance() を使用することをお勧めします。

構文

以下は isinstance() メソッドの構文です:

isinstance(object, classinfo)

パラメータ

  • object -- インスタンスオブジェクト。
  • classinfo -- 直接的または間接的なクラス名、基本型、またはそれらからなるタプルを指定できます。

戻り値

オブジェクトの型が2番目のパラメータの型(classinfo)と同じ場合は True を返し、それ以外の場合は False を返します。


例

以下は isinstance 関数を使用した例です:

>>>a = 2 >>> isinstance (a,int) True >>> isinstance (a,str) False >>> isinstance (a,(str,int,list)) # タプルの中のいずれかであれば True を返す True

type() と isinstance() の違い:

class A: pass class B(A): pass isinstance(A(), A) # returns True type(A()) == A # returns True isinstance(B(), A) # returns True type(B()) == A # returns False

Python 内置函数Python 組み込み関数

その他の拡張