Как определить тип экземпляра и наследование в Python
Метод isinstance() проверяет, является ли объект экземпляром класса, тогда как метод issubclass() запрашивает, является ли один класс подклассом другого класса (или других классов).
isinstance (object, classinfo)
Возвращает true, если аргумент object является экземпляром аргумента classinfo или его (прямого, косвенного или виртуального) подкласса.
issubclass (класс, класс)
Возвращает true, если класс является подклассом (прямым, косвенным или виртуальным) классаinfo. Класс считается подклассом самого себя.
Пример
class MyClass(object): pass class MySubClass(MyClass): pass print(isinstance(MySubClass, object)) print(issubclass(MySubClass, MyClass)) print(isinstance(MySubClass, MyClass))
Выход
True True False