w3resource

Python: dir() function

dir() function

The dir() function returns all properties and methods of the specified object, without the values. The function will return all the properties and methods, even built-in properties which are default for all object.

The function returns the list of names in the current local scope without arguments,. With an argument, attempt to return a list of valid attributes for that object.

Note: The default dir() mechanism behaves differently with different types of objects, as it attempts to produce the most relevant, rather than complete, information:

  • The list contains the names of the module’s attributes if the object is a module object.
  • The list contains the names of its attributes, and recursively of the attributes of its bases if the object is a type or class object,
  • Otherwise, the list contains the object’s attributes’ names, the names of its class’s attributes, and recursively of the attributes of its class’s base classes.

Version:

(Python 3)

Syntax:

dir([object])

The resulting list is sorted alphabetically.

Example: Python dir() function

<<< import struct
<<< dir()   # show the names in the module namespace
['__builtins__', '__doc__', '__name__', 'struct']
<<< dir(struct)   # show the names in the struct module
['Struct', '__builtins__', '__doc__', '__file__', '__name__',
 '__package__', '_clearcache', 'calcsize', 'error', 'pack', 'pack_into',
 'unpack', 'unpack_from']
<<< class Shape:
        def __dir__(self):
            return ['area', 'perimeter', 'location']
<<< s = Shape()
<<< dir(s)
['area', 'perimeter', 'location']

Example: Python dir() with integer

num = [4, 5, 6]
print(dir(num))

print('\nReturn Value from empty dir()')
print(dir())

Output:

['__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']

Return Value from empty dir()
['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'num']

Example: dir() on User-defined Object

import struct
class Fruit:
        def __dir__(self):
            return ['Mango', 'Apple', 'Orange']
x = Fruit()
print(dir(x))

Output:

['Apple', 'Mango', 'Orange']

Python Code Editor:

Previous: dict()
Next: divmod()

Test your Python skills with w3resource's quiz



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://198.211.115.131/python/built-in-function/dir.php