Pythonでオブジェクトの型を取得する方法

Pythonでオブジェクトの型を判定するには、type()isinstance()を使うのが一般的です。

type()を使った型判定

type()はオブジェクトの正確な型を返します。例えば、リストの型を確認したい場合:

obj = []
print(type(obj))  # <class 'list'>

ただし、type()はサブクラスを考慮しないため、継承関係を確認するにはisinstance()を使用します。

isinstance()を使った型チェック

isinstance()は、オブジェクトが特定の型か、またはそのサブクラスかどうかを確認するための関数です。

obj = []
print(isinstance(obj, list))  # True

複数の型を同時にチェック

isinstance()では、複数の型をタプルで渡すことで、複数の型を同時にチェックできます。

obj = []
print(isinstance(obj, (list, dict)))  # True

結論

  • 正確な型を確認するにはtype()を使用。
  • 継承を考慮したチェックにはisinstance()を使用するのが一般的です。