guide to introspecting python?

Skip Montanaro skip at pobox.com
Wed Aug 4 14:06:16 EDT 2004


    Mark> def rdir(item, v=""):
    Mark>     print "%s%s"%(v,item)
    Mark>     for i in dir(item):
    Mark>         rdir(i, v+"    ")

    Mark> import os
    Mark> rdir(os)

Problem is, dir() is already recursive:

    >>> class A:
    ...   def a(self): pass
    ... 
    >>> class B:
    ...   def b(self): pass
    ... 
    >>> class C(A,B): pass
    ... 
    >>> c = C()
    >>> dir(c)
    ['__doc__', '__module__', 'a', 'b']
    >>> dir(C)
    ['__doc__', '__module__', 'a', 'b']

As others have suggested, the inspect module is probably a good place to
start.

Skip



More information about the Python-list mailing list