When I'm too lazy to find API documentation I just read the source code. To make this slightly easier in Python, here's what I use in my ~/.${SHELL}rc:
cdp () { cd "$(python -c "import os.path as _, ${1}; \ print _.dirname(_.realpath(${1}.__file__[:-1]))" )" }
For packages, this takes you to the corresponding source directory:
$ cdp twisted.web $ pwd /usr/share/pyshared/twisted/web $ ls _auth/ domhelpers.py html.py iweb.py resource.py [..]
The realpath and [:-1] hackery follow any python-support symlinks. For "standalone" .py (or .so) modules, cdp will take you to the directory it resides in:
$ cdp subprocess $ pwd /usr/lib/python2.5 $ ls subprocess.py subprocess.py