Die dir () -Methode versucht, eine Liste gültiger Attribute des Objekts zurückzugeben.
Die Syntax von dir()
lautet:
dir ((Objekt))
dir () Parameter
dir()
nimmt maximal ein Objekt.
- Objekt (optional) -
dir()
versucht, alle Attribute dieses Objekts zurückzugeben.
Rückgabewert von dir ()
dir()
versucht, eine Liste gültiger Attribute des Objekts zurückzugeben.
- Wenn das Objekt eine
__dir__()
Methode hat, wird die Methode aufgerufen und muss die Liste der Attribute zurückgeben. - Wenn das Objekt keine
__dir__()
Methode hat, versucht diese Methode, Informationen aus dem__dict__
Attribut (falls definiert) und aus dem Typ Objekt zu finden. In diesem Fall ist die von zurückgegebene Listedir()
möglicherweise nicht vollständig.
Wenn ein Objekt nicht an die dir()
Methode übergeben wird, wird die Liste der Namen im aktuellen lokalen Bereich zurückgegeben.
Beispiel 1: Wie funktioniert dir ()?
number = (1, 2, 3) print(dir(number)) print('Return Value from empty dir()') print(dir())
Ausgabe
('__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', ' __gt__ ',' __hash__ ',' __iadd__ ',' __imul__ ',' __init__ ',' __init_subclass__ ',' __iter__ ',' __le__ ',' __len__ ',' __lt__ ',' __mul__ ',' __ne__ ',' __new__ ' , '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', ' Kopieren ',' Zählen ',' Erweitern ',' Index ','insert ',' pop ',' remove ',' reverse ',' sort ') Rückgabewert aus leerem dir () (' __annotations__ ',' __builtins__ ',' __doc__ ',' __loader__ ',' __name__ ',' __package__ ' , '__spec__', 'number')
Beispiel 2: dir () für ein benutzerdefiniertes Objekt
class Person: def __dir__(self): return ('age', 'name', 'salary') teacher = Person() print(dir(teacher))
Ausgabe
('Alter', 'Name', 'Gehalt')