blob: 3f819199a57798146f7ff75a92f2c2dc4b766c1d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
import os, sys
global nest
nest = 0
def trace(frame, event, arg):
#if event == 'line':
global nest
print "%s%s %s %d" % (
" " * nest,
event,
os.path.basename(frame.f_code.co_filename),
frame.f_lineno,
)
if event == 'call':
nest += 1
if event == 'return':
nest -= 1
return trace
def trace2(frame, event, arg):
#if event == 'line':
global nest
print "2: %s%s %s %d" % (
" " * nest,
event,
os.path.basename(frame.f_code.co_filename),
frame.f_lineno,
)
if event == 'call':
nest += 1
if event == 'return':
nest -= 1
return trace2
sys.settrace(trace)
def bar():
print "nar"
a = 26
def foo(n):
a = 28
sys.settrace(sys.gettrace())
bar()
a = 30
return 2*n
print foo(a)
#import sample
#import littleclass
|