isinstance(object, classinfo) и issubclass(class, classinfo)



isinstance проверяет, относится ли объект частью класса classinfo, наследуется от типа напрямую, косвенно или виртуально (вспомните про уток).



issubclass делает то же самое, что и isinstance, только с классом.



На место classinfo можно передать кортеж, тогда функции будут проверять, относится ли object/class к одному из типов в classinfo. Также, с версии 3.10, туда можно передавать Union тип.



#объяснение