isinstance(obj, cls_or_tuple) проверяет, принадлежит ли объект типу или одному из его подклассов.
Разбор
Суммируя:
isinstance безопаснее, чем type(obj) is ... в полиморфном коде.
- Он уважает иерархию наследования.
- Он поддерживает кортежи типов.
Итог
isinstance(obj, cls_or_tuple) проверяет, принадлежит ли объект типу или одному из его подклассов.