Heim >Backend-Entwicklung >Python-Tutorial >Was bedeutet isinstance in Python?
In Python bedeutet isinstance „Typbeurteilung“. isinstance() ist eine integrierte Funktion, die verwendet wird, um zu bestimmen, ob ein Objekt ein bekannter Typ ist. Wenn ja, gibt sie „True“ zurück, andernfalls gibt sie „False“ zurück ein Tupel und das Objekt einer der Typen im Tupel ist, dann gibt diese Funktion auch True zurück.
Die Betriebsumgebung dieses Tutorials: Windows7-System, Python3-Version, DELL G3-Computer
In Python bedeutet isinstance „Typbeurteilung“.
python isinstance()-Funktion
isinstance()-Funktion zur Bestimmung, ob ein Objekt ein bekannter Typ ist, ähnlich wie type(). Der Unterschied zwischen
isinstance() und type():
type() betrachtet die Unterklasse nicht als übergeordneten Klassentyp und berücksichtigt nicht die Vererbungsbeziehung.
isinstance() betrachtet die Unterklasse als übergeordneten Klassentyp und berücksichtigt die Vererbungsbeziehung.
Wenn Sie feststellen möchten, ob zwei Typen gleich sind, empfiehlt sich die Verwendung von isinstance().
Wenn das angegebene Objekt den angegebenen Typ hat, gibt die Funktion isinstance() True zurück, andernfalls gibt sie False zurück.
Wenn der Typparameter ein Tupel ist, gibt diese Funktion True zurück, wenn das Objekt einer der Typen im Tupel ist.
Syntax:
isinstance(object, type)
Parameter | Beschreibung |
---|---|
Objekt | Erforderlich. Objekt. |
Typ | Ein Typ oder eine Klasse oder ein Tupel von Typen und/oder Klassen. |
Beispiel 1: Prüfen Sie, ob „Hello“ einer der im Typparameter beschriebenen Typen ist.
x = isinstance("Hello", (str, float, int, str, list, dict, tuple)) print(x)
Beispiel 2: Prüfen Sie, ob y eine Instanz von myObj ist. Typ und Der Unterschied zwischen isinstance
type in Python kann den Datentyp eines Objekts ermitteln, und isinstance kann den Datentyp eines Objekts bestimmen. Es gibt zwei Unterschiede zwischen ihnen
1. isinstance ist flexibler Der Typ gibt lediglich die Daten eines Objekttyps zurück, und isinstance kann feststellen, ob der Datentyp dieses Objekts einer von mehreren Datentypen ist.
Angenommen, wir möchten feststellen, ob der Datentyp eines Objekts int oder float ist. Die Schreibbeispiele der beiden Funktionen lauten wie folgt:class myObj: name = "Bill" y = myObj() x = isinstance(y, myObj) print(x)In diesem Szenario hat isinstance offensichtlich mehr Vorteile
2 der Vererbungsbeziehung
a = 4 # 使用type if type(a) == int or type(a) == float: print('yes') # 使用isinstance if isinstance(a, (int, float)): print('yes')B ist eine Unterklasse von A. Typ (b) gibt Klasse B zurück, die nicht gleich A ist, aber B ist eine Unterklasse von A. Daher können wir denken, dass b auch ein Objekt von A ist . Angesichts dieser Art der Vererbung sollte bei Beziehungen eine Instanz verwendet werdenEmpfohlenes Lernen:
Python-Video-Tutorial
Das obige ist der detaillierte Inhalt vonWas bedeutet isinstance in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!