Метод python isinstance — проверяет является лм тот или иной объект экземпляром класса classinfo. Для ясности приведу небольшой пример.
numbers = [1, 2, 3, 4, 2, 5]
# Проверяем, является ли number экземпляром класса list
result = isinstance(numbers, list)
print(result)
# Output: True
Параметры isinstance()
Метод isinstance() принимает два параметра:
- object — непосредственно сам объект, который нам необходимо проверить
- classinfo — класс, тип, или кортеж классов и типов
Метод isinstance() возвращает следующие значения:
- True, если объект является экземпляром classinfo
- False в случае если объект не является экземпляром
Пример 1. Как работает функция isinstance()?
class Foo:
a = 5
fooInstance = Foo()
print(isinstance(fooInstance, Foo))
print(isinstance(fooInstance, (list, tuple)))
print(isinstance(fooInstance, (list, tuple, Foo)))
#Результат
True
False
True
Пример 2. Работа isinstance()
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)
#Результат
[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