Funcția isinstance () verifică dacă obiectul (primul argument) este o instanță sau o subclasă a clasei classinfo (al doilea argument).
Sintaxa lui isinstance()
este:
instanță (obiect, clasăinfo)
isinstance () Parametri
isinstance()
ia doi parametri:
- obiect -
object
de verificat - classinfo - clasă, tip sau tuplu de clase și tipuri
Valoare returnată de la isinstance ()
isinstance()
se intoarce:
True
dacă obiectul este o instanță sau subclasă a unei clase sau a oricărui element al tupluluiFalse
in caz contrar
Dacă classinfo nu este un tip sau un tuplu de tipuri, TypeError
se ridică o excepție.
Exemplul 1: Cum funcționează isinstance ()?
class Foo: a = 5 fooInstance = Foo() print(isinstance(fooInstance, Foo)) print(isinstance(fooInstance, (list, tuple))) print(isinstance(fooInstance, (list, tuple, Foo)))
Ieșire
Adevărat Fals Adevărat
Exemplul 2: Lucrarea isinstance () cu tipuri native
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)
Ieșire
(1, 2, 3) instanță a listei? Adevărat (1, 2, 3) instanță de dict? Fals (1, 2, 3) instanță de dict sau listă? Adevărat 5 exemplu de listă? Fals 5 instanță de int? Adevărat