I'm trying out a new Python mode for Emacs 23, but I'm not sure how to tell if I'm using the new mode (source code located at ~/.elisp/python.el) or the bundled python.el mode.
Is there a way to find out where the current (or any active) mode was loaded from? C-h m does not seem to provide that information, and I don't know where else to look.
C-hf python-mode RET will tell you which file it lives in, and you can browse to that file by following the link.
You can also use M-x find-function RET python-mode RET to go there directly.
(I find it handy to have find-function bound to C-hC-f)
In general, you could use the following:
M-: (find-function major-mode) RET
Determine path to source code of current mode in Emacs 23