Python

#!/usr/bin/env python# # -*- coding: UTF-8 -*-"""Cheap and simple API helperThis program is part of "Dive Into Python", a free Python book forexperienced programmers. Visit http://diveintopython.org/ for thelatest version."""__author__="Mark Pilgrim ([email protected])"__version__="$Revision: 1.3 $"__date__="$Date: 2004/05/05 21:57:19 $"__copyright__="Copyright (c) 2001 Mark Pilgrim"__license__="Python"# While this is a good example script to teach about introspection,# in real life it has been superceded by PyDoc, which is part of the# standard library in Python 2.1 and later.# # Your IDE may already import the "help" function from pydoc# automatically on startup; if not, do this:# # >>> from pydoc import help# # The help function in this module takes the object itself to get# help on, but PyDoc can also take a string, like this:# # >>> help("string") # gets help on the string module# >>> help("apihelper.help") # gets help on the function below# >>> help() # enters an interactive help mode# # PyDoc can also act as an HTTP server to dynamically produce# HTML-formatted documentation of any module in your path.# That's wicked cool. Read more about PyDoc here:# http://www.onlamp.com/pub/a/python/2001/04/18/pydoc.htmldefinfo(object,spacing=10,collapse=1):"""Print methods and doc strings. Takes module, class, list, dictionary, or string."""methodList=[eforeindir(object)ifcallable(getattr(object,e))]processFunc=collapseand(lambdas:" ".join(s.split()))or(lambdas:s)print"\n".join(["%s%s"%(method.ljust(spacing),processFunc(str(getattr(object,method).__doc__)))formethodinmethodList])if__name__=="__main__":printhelp.__doc__