Language/Python

Python - dir(), object의 속성(attribute) 목록을 보여주는 함수

TechNote.kr 2018. 1. 12. 20:59
728x90


dir



>>> dir([object])


전달받은 object 인자의 속성 목록(attribute list)를 보여준다.

만약 아무런 인자가 전달되지 않았다면 현재 local scope내 사용 가능한 모듈(module) 혹은 object 목록이 표시된다.


__builtin__ module에 포함된 function 이다. 



argument


object (optional) - dir() 함수는 object가 가지는 모든 속성(attribute)들을 반환한다.




return value


인자로 전달받은 object의 유효한 속성들의 목록을 반환한다.




example


dir() 함수 사용시 argument가 없는 경우)

>>> dir()
['__builtins__', '__doc__', '__name__', '__package__']


dir() 함수 사용시 argument가 있는 경우)

>>> sample = [1,2,3]
>>> dir(sample)
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__delslice__', 
'__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', 
'__getslice__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', 
'__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', 
'__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', 
'__setslice__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'count', 
'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']


사용자 정의 class를 dir()함수 인자로 넘겼을 경우)

>>> class Sample:
...     def __dir__(self):
...             return ['a', 'b', 'c']
...
>>> v = Sample()
>>> dir(v)
['a', 'b', 'c']




728x90