On 6/18/2009 7:37 AM Jojo Mwebaze said...
Hi Tutor
The problem i have is to see which statements modify my data at
execution time without referring to the code. Referring to the code is
difficult esp because of branching. You can never tell before hand which
branch execution will follow.
e.g in the example below, statements 1, 2, 5,7 and 10 modify my data and
are the ones i would like to trace during run time. However the other
statements do not change my data so am not interested in them.
How can this be achieved during execution?
I think most of us will litter print statements through the code to
track where something changes, then remove them once we're done.
Sometimes I'll set a DEBUG variable or dict. I also use pdb as needed,
eg import pdb; pdb.set_trace()
Emile
Not sure if the traceback
module can be helpful here!
Cheers
Jojo.
===========================
def myfunction():
1. num1= 20 #statement 1
2. num2 = 30 #statement 2
3. somelist= [ ] #statement 3
4. if (num1 < num2):
5. num2 = num2 * 20 #statement 3
6. else:
7 num2 = num1 + num2 #statement 3
8. mylist = [num1, num2] #statement 4
9. for items in mylist:
10. somelist.append( math.sqrt(item) + math.log(item)) #statement 5
11. return somelist
------------------------------------------------------------------------
_______________________________________________
Tutor maillist - Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor
_______________________________________________
Tutor maillist - Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor