I currently use Spyder as Python IDE, it has context help and good debugging capability.
Set a breakpoint, click "Debug", the debugger will launch, then type "continue" to proceed. Other useful commands are
help - print a list of commands
exec - execute a command under current context, for example, exec "print variable_name"; give command as a string