I dont think Ive seen it said on this thread (if yes sorry for missing it) If you use emacs
1. DONT use the python.el that comes with emacs but use python-mode.el that comes from python 2. Use python as an interpreter ie not as you would use C or Java or ... which is to say 2.1 Start python as an interpreter under emacs ... which (assuming emacs is set up properly) means 2.1.1 M-x py-shell or 2.1.2 From a python source file C-c C-c 2.2 Dont (PLEASE) start a shell and start python in that; start a genuine 'inferior' python under emacs (yes emacs-speak is a bit weird but once you get used to it it has no replacement) 3. The most useful paradigm of noob hacking of python in emacs is to split the window into 2, keep your python file in one and the inferior python interpreter in the other. 4. After you've graduated out of noob status you may like to look at 4.1 pdb (Ive not managed to get this to run on windows) 4.2 doctest mode 4.3 rope 4.4 ipython -- http://mail.python.org/mailman/listinfo/python-list