Metoden dir () forsøger at returnere en liste over gyldige attributter for objektet.
Syntaksen for dir()
er:
dir ((objekt))
dir () Parametre
dir()
tager maksimalt et objekt.
- objekt (valgfrit) -
dir()
forsøger at returnere alle attributter for dette objekt.
Returværdi fra dir ()
dir()
forsøger at returnere en liste med gyldige attributter for objektet.
- Hvis objektet har
__dir__()
metode, kaldes metoden og skal returnere listen over attributter. - Hvis objektet ikke har
__dir__()
metode, forsøger denne metode at finde oplysninger fra__dict__
attributten (hvis defineret) og fra typeobjektet. I dette tilfælde er listen, der returneres fra,dir()
muligvis ikke komplet.
Hvis et objekt ikke sendes til dir()
metode, returnerer det listen over navne i det aktuelle lokale omfang.
Eksempel 1: Hvordan dir () fungerer?
number = (1, 2, 3) print(dir(number)) print('Return Value from empty dir()') print(dir())
Produktion
('__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__ ',' __n__ , '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear' kopi ',' tæl ',' udvid ',' indeks ','insert ',' pop ',' remove ',' reverse ',' sort ') Returværdi fra tom dir () (' __annotations__ ',' __builtins__ ',' __doc__ ',' __loader__ ',' __name__ ',' __package__ ' , '__spec__', 'nummer')
Eksempel 2: dir () på brugerdefineret objekt
class Person: def __dir__(self): return ('age', 'name', 'salary') teacher = Person() print(dir(teacher))
Produktion
('alder', 'navn', 'løn')