brad tilley <[EMAIL PROTECTED]> writes: > How do I import a module and then ask it to show me its methods or other > aspects about itself during execution? I'd like to do something such as > this: > > import win32api > > print win32api.methods() > > I'd like to write some test scripts that load modules and probe them > for information about themselves.
As well as the 'inspect' module, you may be able to get some distance just with builtin functionality:: >>> import re >>> dir(re) ['DOTALL', 'I', 'IGNORECASE', 'L', 'LOCALE', 'M', 'MULTILINE', 'S', 'U', 'UNICODE', 'VERBOSE', 'X', '__all__', '__builtins__', '__doc__', '__file__', '__name__', 'compile', 'engine', 'error', 'escape', 'findall', 'finditer', 'match', 'purge', 'search', 'split', 'sub', 'subn', 'template'] >>> [(n, getattr(re, n)) for n in dir(re)] [('DOTALL', 16), ('I', 2), ('IGNORECASE', 2), ('L', 4), ('LOCALE', 4), ('M', 8), ('MULTILINE', 8), ('S', 16), ('U', 32), ('UNICODE', 32), ('VERBOSE', 64), ('X', 64), ('__all__', ['match', 'search', 'sub', 'subn', 'split', 'findall', 'compile', 'purge', 'template', 'escape', 'I', 'L', 'M', 'S', 'X', 'U', 'IGNORECASE', 'LOCALE', 'MULTILINE', 'DOTALL', 'VERBOSE', 'UNICODE', 'error', 'finditer']), [...] ] >>> [n for n in dir(re) if hasattr(getattr(re, n), '__call__')] ['compile', 'escape', 'findall', 'finditer', 'match', 'purge', 'search', 'split', 'sub', 'subn', 'template'] -- \ "Madness is rare in individuals, but in groups, parties, | `\ nations and ages it is the rule." -- Friedrich Nietzsche | _o__) | Ben Finney -- http://mail.python.org/mailman/listinfo/python-list