On Sunday, September 18, 2016, Ned Batchelder <n...@nedbatchelder.com> wrote:
> On Saturday, September 17, 2016 at 11:09:04 PM UTC-4, Peng Yu wrote: > > The manual says the following. > > > > "The trace function is invoked (with event set to 'call') whenever a > > new local scope is entered; it should return a reference to a local > > trace function to be used that scope, or None if the scope shouldn’t > > be traced." > > > > It means that one can not somehow settrace in one line and expect to > > get the trace function being called in the next line. > > > > So something like `set -v` in bash sounds not possible. Is it so? > > You've found a good reason why "set -v" would be very difficult if > not impossible in Python. > > I'm curious though, why you would want to trace every line in a > program every time you (or anyone else) ran it? This is for debugging not for normal run. But I need the ability to control the range of the code in which the debug message is printed. > I view tracing lines > as a debugging technique. Once the program is behaving properly, why > do you want all the noise of the traced lines? > > In Bash scripts we do it because some scripts are light automation > where the person running the script should have a clear idea of what > actions it is taking. The actions in the script are commands that the > person might run themselves at other times, and so the difference > between running the script and running the commands is not great. > > But in a Python program, presumably the difference is greater. I cannot > type out single Python lines at my shell prompt to perform the actions > the Python program does. > > Perhaps you want to define an alias for "python -m trace -t $*" ? > > --Ned. > -- > https://mail.python.org/mailman/listinfo/python-list > -- Regards, Peng -- https://mail.python.org/mailman/listinfo/python-list