Heim >Backend-Entwicklung >Python-Tutorial >Verwenden Sie die Funktion isinstance() von Python, um zu bestimmen, ob ein Objekt zu einer bestimmten Klasse gehört
Verwenden Sie die Funktion isinstance() von Python, um zu bestimmen, ob ein Objekt zu einer bestimmten Klasse gehört.
In Python müssen wir häufig feststellen, ob ein Objekt zu einer bestimmten Klasse gehört. Um die Beurteilung von Kategorien zu erleichtern, stellt Python die integrierte Funktion isinstance() bereit. In diesem Artikel wird die Verwendung der Funktion isinstance() vorgestellt und Codebeispiele bereitgestellt. Die Funktion
isinstance() kann bestimmen, ob ein Objekt zur angegebenen Klasse oder einer abgeleiteten Klasse der Klasse gehört. Die Syntax lautet wie folgt:
isinstance(object, classinfo)
Dabei ist object das zu beurteilende Objekt, und classinfo kann eine einzelne Klasse oder ein aus Klassen bestehendes Tupel sein. Wenn das Objekt zu einer der Klassen oder einer davon abgeleiteten Klasse gehört, gibt die Funktion isinstance() „True“ zurück, andernfalls gibt sie „False“ zurück.
Das Folgende ist ein einfaches Beispiel, das zeigt, wie die Funktion isinstance() verwendet wird, um den Objekttyp zu bestimmen:
class Dog: def __init__(self, name): self.name = name class Cat: def __init__(self, name): self.name = name dog = Dog("旺财") cat = Cat("小花") print(isinstance(dog, Dog)) # 输出:True print(isinstance(dog, Cat)) # 输出:False print(isinstance(cat, (Dog, Cat))) # 输出:True
Im obigen Beispiel haben wir zwei Klassen Dog und Cat definiert, die beide einen Attributnamen haben. Dann haben wir ein Hundeobjekt und ein Katzenobjekt erstellt. Über die Funktion isinstance() ermitteln wir, ob das Hundeobjekt zur Dog-Klasse gehört, ob das Katzenobjekt zur Cat-Klasse gehört und ob das Katzenobjekt zur Dog-Klasse oder zur Cat-Klasse gehört.
Zusätzlich zur Bestimmung des Typs eines einzelnen Objekts kann die Funktion isinstance() auch bestimmen, ob ein Objekt zu einer von mehreren Klassen gehört.
Es ist erwähnenswert, dass die Funktion isinstance() auch verwendet werden kann, um die Vererbungsbeziehung des Objekttyps zu bestimmen. Das heißt, wenn eine Klasse eine andere Klasse erbt, kann die Funktion isinstance() bestimmen, ob das Objekt zur übergeordneten Klasse oder Unterklasse gehört.
Das Folgende ist ein komplexeres Beispiel, das die Vererbungsbeurteilung der Funktion isinstance() demonstriert:
class Animal: pass class Mammal(Animal): pass class Dog(Mammal): def __init__(self, name): self.name = name class Cat(Mammal): def __init__(self, name): self.name = name dog = Dog("旺财") cat = Cat("小花") print(isinstance(dog, Dog)) # 输出:True print(isinstance(dog, Mammal)) # 输出:True print(isinstance(dog, Animal)) # 输出:True print(isinstance(cat, Mammal)) # 输出:True print(isinstance(cat, Animal)) # 输出:True print(isinstance(dog, Cat)) # 输出:False
Im obigen Beispiel haben wir eine Tierklasse und eine Säugetierklasse als übergeordnete Klasse definiert und dann die Hundeklasse und definiert Die Katzenklasse ist eine Unterklasse der Säugetierklasse. Durch die Funktion isinstance() bestimmen wir, ob das Hundeobjekt zur Hundeklasse, Säugetierklasse und Tierklasse gehört, ob das Katzenobjekt zur Säugetierklasse und Tierklasse gehört und ob das Hundeobjekt zur Katzenklasse gehört.
Durch die Einleitung dieses Artikels können wir sehen, dass wir mithilfe der Funktion isinstance() leicht feststellen können, ob ein Objekt zu einer bestimmten Klasse gehört. In der tatsächlichen Entwicklung kann uns die Beherrschung der Verwendung der Funktion isinstance() dabei helfen, die Objekttypbeurteilung und die Verarbeitungslogik flexibler zu handhaben. Wenn Sie an der Kategoriebeurteilung von Python interessiert sind, möchten Sie vielleicht die Verwendung der Funktion isinstance() in einem tatsächlichen Projekt üben, was meiner Meinung nach hilfreich für Ihre Programmierkenntnisse sein wird.
Das obige ist der detaillierte Inhalt vonVerwenden Sie die Funktion isinstance() von Python, um zu bestimmen, ob ein Objekt zu einer bestimmten Klasse gehört. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!