The syntax of isinstance()
is:
isinstance(object, classinfo)
isinstance() Parameters
isinstance()
takes two parameters:
- object -
object
to be checked - classinfo - class, type, or tuple of classes and types
Return Value from isinstance()
isinstance()
returns:
True
if the object is an instance or subclass of a class or any element of the tupleFalse
otherwise
If classinfo is not a type or tuple of types, a TypeError
exception is raised.
Example 1: How isinstance() works?
class Foo:
a = 5
fooInstance = Foo()
print(isinstance(fooInstance, Foo))
print(isinstance(fooInstance, (list, tuple)))
print(isinstance(fooInstance, (list, tuple, Foo)))
Output
True False True
Example 2: Working of isinstance() with Native Types
numbers = [1, 2, 3]
result = isinstance(numbers, list)
print(numbers,'instance of list?', result)
result = isinstance(numbers, dict)
print(numbers,'instance of dict?', result)
result = isinstance(numbers, (dict, list))
print(numbers,'instance of dict or list?', result)
number = 5
result = isinstance(number, list)
print(number,'instance of list?', result)
result = isinstance(number, int)
print(number,'instance of int?', result)
Output
[1, 2, 3] instance of list? True [1, 2, 3] instance of dict? False [1, 2, 3] instance of dict or list? True 5 instance of list? False 5 instance of int? True