I'm going to go in the opposite direction of Eclipse/Pydev (too big) and recommend SciTE (too small). No, I'm not comfortable even calling it an IDE, but it really nails points 1 and 2, and it is extremely lightweight, suitable for even the wimpiest possible computers that are capable of running Python 3 (or Python 2.3 for that matter).
I think Python is such a nice, small, simple language, if you are only teaching the basics, that you really don't need a full-blown IDE. I actually find learning an IDE more difficult than learning Python; plus having an IDE sometimes obscures what is part of the language and what is part of the development environment.
Edit: The list of criteria in the original question was edited. Now SciTE actually meets at least the first three. At the time of this edit, those are (1) runs on Windows and Linux, (2) has typical programming editor features like syntax highlighting and so forth, (3) has a button to execute the script.