Python-Introspektion-Funktionen

February 17

Als Programmiersprache verkörpert Python eine Objekt-orientierte Paradigma. In Python ist alles ein Objekt. Dies bedeutet, dass alles funktioniert wie ein Objekt, einschließlich wie relevante Daten im Objekt gespeichert ist. Python verwendet das Konzept der Introspektion Code basierend auf dieses Objekt-orientierte Paradigma auswerten. Um Introspektion zu ermutigen, auch Python eine Reihe von Methoden, die für Objekte, introspektive Befehle durchführen zurückgeben, Daten manipuliert, sodass es von ausgewertet werden könnte.

Introspektion

Introspektion in Python ist die Fähigkeit des Codes zu beurteilen andere Code oder Objekte zu bestimmen Attribute über was sie sind und was sie tun. Da Python introspektive Funktionalität in die Sprache integriert hat, können die Programmierer Code, der sich selbst (oder Teile von sich selbst) ergibt während der Ausführung von Code schreiben. Da der Code während der Laufzeit selbst auswerten kann, kann der Programmierer entwerfen reagiert auf code und Code basierend auf unterschiedlichen Attribute ermöglicht größeren Flexibilität im Code manipuliert.

Der Typ Methode

Die "~Type()"-Methode nimmt als Argument eine Variable und gibt eine Zeichenfolge, die den Typ der Variablen Daten beschreibt. Die meisten integrierte Typen in der Sprache Python als Datentyp beschreibt, und mit der Typ-Methode kehrt dieses Typs. Zum Beispiel

X = 1

y = 'c'

Z ['a', ' b']

Type(x)

< Typ "Int" >

Type(y)

< Typ'str' >

Type(z)

< geben Sie 'Liste' >

Wenn Sie Typ-Funktion verwenden, gibt die Variable "X" als Ganzzahl, "y" als Zeichenfolge und "Z" als Liste zurück.

Die dir() Methode

Wenn ein Objekt gegeben, gibt die Methode "dir()" eine Liste aller verfügbaren Methoden auf diese Methode zurück. Zum Beispiel

c = ['a', ' b']

dir(c)

kehrt eine lange Liste von verfügbaren Methoden der List-Klasse (einschließlich pop(), append() und insert()). Sogar eine benutzerdefinierte Klasse wird seine internen Methoden auflisten:

Beispiel für Klasse:

... Def ex(self):

... self.x = 1

X = example()

dir(x)

('Doc', 'Init', 'Modul', 'Ex')

Die Methoden "isinstance()" und "issubclass()"

Die "insinstance()" Methode funktioniert durch Überprüfung einer Variablen anhand eines Datentyps, und basieren auf diesem Vergleich Wert true oder falschen zurückgeben. Zum Beispiel:

X = 1

IsInstance (X, Int)

1

IsInstance (X, str)

0

"X" steht für die Zahl 1. Das erste Beispiel gibt einen true-Wert (1) zurück, da x eine ganze Zahl ist. Das zweite Beispiel gibt der Wert falschen (0) zurück, da x keine Zeichenfolge ist.

Auch "issubclass()" true zurückgibt oder falsch basierend auf, ob eine Klasse von einer anderen Klasse abgeleitet wird. Beispielsweise wenn ein Programmierer definiert Klasse "Ball" Klasse "Sphere" ableiten:

Klasse Ball(Sphere):

dann wird ein Issubclass wahr, wie folgt zurück:

X = Ball()

Issubclass (X, Kugel)

1