[Tutor] What has Editor X got that PyWin32 hasn't?
Dick Moores
rdm at rcblue.com
Fri Aug 15 02:23:05 CEST 2008
At 04:54 PM 8/14/2008, bob gailer wrote:
>Dick Moores wrote:
>>At 08:58 PM 8/13/2008, bob gailer wrote:
>>>One thing I really like about Python Win is the integrated
>>>debugger, which takes no time to start up. SPE OTOH uses WinPDB
>>>which runs as a separate process that takes (in the demo video) 15
>>>seconds to start (each time it is requested)! Since I depend
>>>heavily on the debugger that delay would drive me crazy!
>>
>>Hm, I just measured how long Ulipad takes to get going with WinPDB,
>>a plug-in: 20 seconds, but 10 seconds for a restart.
>
>Since you mention Ulipad I may have tried WinPDB there instead of
>SPE. I just remember trying it and not liking it. Python Win is
>totally integrated and seamless.
>>Other than the time to start, could you compare debugging with
>>Python Win and debugging with WinPDB?
>
>I'll taks a stab. All I know about WinPDB is what I see in the SPE
>video, so it probably is not the truth. What I see is a screen
>cluttered with a lot of windows, and having to switch application to
>access the output window or the code editor to make changes. Wth
>PyWin I work in the same familiar environment. The interactive
>window is available for viewing output and entering Python
>statements and expressions. If I want to see the stack or watch
>variables I can open floating or dockable windows.
>
>Python Win serves my workflow. I am editing a script. I decide to
>run it so I can see what steps it takes and what values my variables
>are getting.
>
>All I have to is press F10 in the active window and execution starts
>with the first statement. I can set breakpoints with F9, control
>execution with F11 F10 shift-F11 F5 and shift-F5. I can edit my
>source on the fly (changes of course do not take effect until the
>next execution cycle, and I must take care to not delete or add
>lines (the debugger does not know about such changes).
>
>I can set a condition for a breakpoint.
>
>OTOH WinPDB displays more information (witness locals globals
>exceptions and threads). I don't know how PythonWin handles threads.
Thanks very much for taking the time to write about something I've
long wondered about.
As a Python learner, I found that getting acquainted with WinPDB made
such a big difference in my ability to program, that I'm reluctant to
change. I learned to use it through
<https://gotgenes.com/swcatvtwiki/DebuggingExercise>
BTW you can set a condition for a breakpoint with it: See this
example towards the bottom of the tutorial:
==================================
we need to set our conditional breakpoint. Look for the line number
of the while loop statement:
while divisor <= 0:and set a conditional breakpoint for when divisor
reaches the value 1.
bp 35, divisor == 1
====================================
Dick
More information about the Tutor
mailing list