Here's an example where isinstance achieves something that type cannot:
class Vehicle:
pass
class Truck(Vehicle):
pass
in this case, a truck object is a Vehicle, but you'll get this:
isinstance(Vehicle(), Vehicle)
type(Vehicle()) == Vehicle
isinstance(Truck(), Vehicle)
type(Truck()) == Vehicle
In other words, isinstance is true for subclasses, too.
You can use the following video tutorials to clear all your doubts:-