Die Programmiersprache Python , ähnlich wie andere Programmiersprachen , wird verwendet, um Befehle auf dem Zustand des Programms basierend auszuführen. Dies wird in der Regel durch Vergleich von Variablen oder Auswertung wahr oder falsch Aussagen erreicht . Der Programmierer muss über sonstige tatsächliche Code im Voraus wissen , wie der Zweck eines bestimmten Moduls und wie es funktioniert . Introspektion ist ein Aspekt der Programmierung, die das Programm mit sich selbst und seinen eigenen Innenleben auswerten können. Introspektion
Introspektion in Python gehört die Nutzung der Funktionalität von Python zu Objekten , Methoden und Module während der Laufzeit zu prüfen. In Python ist alles ein Objekt ist, und der introspektiven Charakter Python bedeutet, dass es Objekte, die während Codeausführung zu untersuchen. Dies bedeutet, dass Code ausgeführt wird , sie selbst oder Teile von sich selbst untersucht , um alle Maßnahmen ergriffen zu führen. Durch die Untersuchung selbst , kann der Code nehmen Informationen über Datentypen oder Namen wie Determinatoren Verfahren , wie man vorgehen .
Rufmodus Argumente Sequenz
typische Programmierung Praxis kann ein Programmierer Standardinformationen für jedes Argument, das ein Verfahren bereitzustellen. Zum Beispiel kann die Python -Methode
def Tripel ( Wert1, Wert2 = 4, value3 = 6) : hat
drei Argumente , von denen zwei die Standardwerte ( Wert2 und value3 ) gegeben sind. In einigen anderen Programmiersprachen wie C + +, ein Programmierer müssen die Argumente in der richtigen Reihenfolge für das Verfahren vollständig funktionieren zu liefern . Python, jedoch lässt der Programmierer angeben Argumente in beliebiger Reihenfolge , wie
triple (3 , value3 = 7)
weil Argumente, die an einem von Python als Wörterbuch Objekt verstanden werden .
Die " getattr " und Funktion
" getattr "-Funktion ist ein wichtiger Teil von Python Introspektion (Quelle 3). Die " getattr "-Funktion nicht nennen eine Funktion direkt , sondern gibt einen Verweis auf den Speicherort der Funktion. Dies erlaubt es dem Programm, um ein Verfahren in einem Objekt (sofern vorhanden) , ohne dessen Namen vor der Laufzeit zu verweisen. Durch die Verwendung von " getattr " auf diese Weise kann die richtige Methode Namen während Codeausführung durch Benutzereingaben konstruiert werden und nannte als ein normales Verfahren . Dies ist in Fällen, in denen mehrere Variationen Ausgang erforderlich sind wertvoll.
Spezielle Methoden
Die Macht der Introspektion in Python kommt von speziellen Methoden . Die " aufrufbare " Methode gibt true zurück, wenn eine Methode oder Klasse existiert vom Programmierer aufgerufen werden. Die "type" -Methode gibt den Typ des Objekts aufgerufen. Die " issubclass "-Methode meldet einen Wahrheitswert , ob oder nicht eine Klasse erbt von einem anderen.