La funzione isinstance () controlla se l'oggetto (primo argomento) è un'istanza o una sottoclasse della classe classinfo (secondo argomento).
La sintassi di isinstance()è:
isinstance (object, classinfo)
Parametri isinstance ()
isinstance() accetta due parametri:
- oggetto - objectda controllare
- classinfo : classe, tipo o tupla di classi e tipi
Valore restituito da isinstance ()
isinstance() ritorna:
- Truese l'oggetto è un'istanza o una sottoclasse di una classe o qualsiasi elemento della tupla
- Falsealtrimenti
Se classinfo non è un tipo o una tupla di tipi, TypeErrorviene sollevata un'eccezione.
Esempio 1: come funziona isinstance ()?
 class Foo: a = 5 fooInstance = Foo() print(isinstance(fooInstance, Foo)) print(isinstance(fooInstance, (list, tuple))) print(isinstance(fooInstance, (list, tuple, Foo)))
Produzione
Vero Falso Vero
Esempio 2: utilizzo di isinstance () con tipi nativi
 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)
Produzione
(1, 2, 3) istanza di elenco? True (1, 2, 3) istanza di dict? False (1, 2, 3) istanza di dict o list? Vero 5 istanza di elenco? False 5 istanza di int? Vero








