La funzione isinstance di python

Nel linguaggio python la funzione isistance() mi permette di verificare se un oggetto è un'istanza di una classe.

La sintassi

isinstance(oggetto, classe)

La funzione ha due argomenti:

  • Il nome dell'oggetto da controllare.
  • Il nome della classe di appartenenza.

Restituisce in output un valore booleano:

  • True. Se l'oggetto appartiene alla classe indicata.
  • False. Se l'oggetto non appartiene alla classe indicata.

    Un esempio pratico

    In questo script creo due classi.

    Poi lancio un'istanza alla prima classe (Classe1) tramite la variabile var.

    1. class Classe1(object):
    2. def metodo1(self):
    3. print('A')
    4. class Classe2(object):
    5. def metodo1(self):
    6. print('B')
    7. var = Classe1()

    A questo punto eseguo la funzione isinstance() per verificare se l'oggetto appartiene alla classe.

    La funzione restituisce in output il valore True.

    >>> isinstance(var, Classe1)
    >>> True

    L'oggetto var è effettivamente un'istanza di Classe1.

    Ora provo a verificare se l'oggetto var appartiene anche alla seconda classe.

    >>> isinstance(var, Classe2)
    >>> False

    In questo caso la funzione restituisce il valore booleano False perché l'oggetto var non è un'istanza di Classe2.

    E così via.

     


     

    Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

    FacebookTwitterLinkedinLinkedin
    knowledge base

    Classi Python