Функція isinstance () перевіряє, чи є об'єкт (перший аргумент) екземпляром або підкласом класу classinfo (другий аргумент).
Синтаксис isinstance()
:
isinstance (об'єкт, інформація про клас)
isinstance () Параметри
isinstance()
приймає два параметри:
- об'єкт -
object
для перевірки - classinfo - клас, тип або набір класів і типів
Повернене значення від isinstance ()
isinstance()
повертає:
True
якщо об'єкт є екземпляром або підкласом класу або будь-якого елемента кортежуFalse
інакше
Якщо classinfo не є типом або набором типів, виникає TypeError
виняток.
Приклад 1: Як працюєinstance ()?
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) екземпляр списку? Справжній (1, 2, 3) екземпляр дикту? Помилковий (1, 2, 3) примірник вироку чи списку? Правда 5 примірників списку? Помилковий 5 екземпляр int? Правда