Gabriel Farrell wrote: >> > Each call to rloop() has its own local variables and its own state. >> > Returning from one call doesn't pop all the way up the stack, it >> > resumes execution at the point of call with the local state restored >> > to what it was before the call. >> > > Okay, this was the main abstraction I was missing, and you've spelled > it out clearly. It seems like such an "intelligent" way to handle the > flow -- I think that's what threw me off. > This is typical behavior for many languages, not special to Python. Generally each invocation of a function will have its own stack frame.
> I read > http://www.ferg.org/papers/debugging_in_python.html , imported pdb, > and inserted pdb.set_trace() after > > def rloop(seqin, listout, comb): > > I'm seeing now, by stepping through the program, how it flows. Pdb is > pretty awesome! I had a feeling there was something like different > levels of loops going on, but I didn't get it before. > Impressive that you picked up pdb so easily. You might be interested in a debugger with a GUI, there are several for Python. A primitive one is part of IDLE. I like winpdb. Other dev tools have Python debugger support as well. > Thanks, Kent! You're welcome, it's very gratifying to see the light go on like this :-) Kent _______________________________________________ Tutor maillist - [email protected] http://mail.python.org/mailman/listinfo/tutor
