English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Python Grundtutorials

Python Kontrollfluss

Python Funktion

Python Datentypen

Python Dateioperationen

Python Object und Klasse

Python Datum und Zeit

Erweiterte Python-Kenntnisse

Python Referenzhandbuch

Verwendung und Beispiel von Python dir()

Python-eingebaute Funktionen

Die dir()-Methode versucht, eine gültige Eigenschaftsliste des Objects zurückzugeben.

Die Syntax von dir() ist:

dir([object])

dir()-Parameter

dir() kann maximal ein Object enthalten.

  • Object(Optional)-dir() versucht, alle Eigenschaften dieses Objects zurückzugeben.

Rückgabewert von dir()

dir() versucht, eine gültige Eigenschaftsliste des Objects zurückzugeben.

  • Wenn das Object eine __dir__()-Methode hat, wird diese Methode aufgerufen und muss eine Eigenschaftsliste zurückgeben.

  • Wenn das Object keine __dir__()-Methode hat, versucht diese Methode, Informationen aus der __dict__-Eigenschaft (wenn definiert) und dem Typobjekt zu finden. In diesem Fall kann die Liste, die von dir() zurückgegeben wird, unvollständig sein.

Wenn das Object nicht an die dir()-Methode übergeben wird, gibt sie die Liste der Namen im aktuellen lokalen Bereich zurück.

Beispiel1Wie funktioniert dir()?

zahl = [1, 2, 3]
print(dir(zahl))
print('\nRückgabewert von empty_dir()')
print(dir())

Wenn Sie dieses Programm ausführen, wird als Ausgabe ausgegeben:

['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
Rückgabewert aus leeren dir()
['__builtins__', 'number']

Beispiel2:dir() auf benutzerdefinierten Objekten anwenden

class Person:
  def __dir__(self):
    return ['age', 'name', 'salary']
    
teacher = Person()
print(dir(teacher))

Wenn Sie dieses Programm ausführen, wird als Ausgabe ausgegeben:

['age', 'name', 'salary']

Python-eingebaute Funktionen