To start with, you need a development environment. Luckily, the installation process is not difficult at all. And all the tools listed here are free!

Python distribution :
Windows: Get Python(x,y) from here. This will give you everything you need (and even more) in a single package.
Other platforms:  Get Enthought Python Distribution. (also works for Windows).

Additional libraries:
this is a list of handy libraries not included in Python(x,y)
  • pandas, time series manipulation

Source code editors:

  • Spyder is a Matlab-like IDE for interactive work. Highly recommended for beginners and Matlab converts.
  • Notepad++ is an excellent replacement for the standard windows notepad. I use it all the time for all files that are human-readable: source codes, csv files, html etc. 
  • Jedit takes its place somewhere between full-featured IDE and a text editor. Feature-rich, cross-platform. 
  • Pyscripter is a light-weight Python IDE with support for debugging. Great for medium-level complexity projects
  • Eclipe + PyDev is a professional-level IDE, fit for most complex projects.

Other tools

New IPython 0.11 has two very exciting features: qt console and the notebook*.
Setting up is described here

* It is a pain in the ass to set up qtconsole and notebook on windows, as EPD does not come with all the necessary modules. Installing them by hand gave me a dependency hell, something I simply don't have time for . I hope that either PythonXY or EPD will include a full package in the future releases.