Um Reflection in Python zu verwenden, sollten Sie sich die folgenden integrierten Funktionen merken.
#Gibt zurück, ob das Objekt ein Namensattribut hat
hasattr(object, name)
#Gibt das Namensattribut im Objekt zurück. Standard kann den zurückzugebenden Wert angeben, wenn kein Namensattribut vorhanden ist
getattr(object, name[, default])
#Gibt True zurück, wenn das Objekt aufrufbar ist. Wenn True, Objekt()Kann mit ausgeführt werden.
callable(object)
#Es wird versucht, eine Liste gültiger Attribute vom Objekt zurückzugeben
dir([object])
Die Verwendung ist wie folgt. Wenn Sie beispielsweise entweder den Wert eines Attributs abrufen und zurückgeben oder eine Methode ausführen und zurückgeben möchten.
if hasattr(object, name):
attr = getattr(object, name)
if callable(attr):
return attr()
else:
return attr
Recommended Posts