2012-10-10 47 views
1

什麼是最好的工具找到在python程序中執行的最後一行代碼?謝謝!如何找到python中最後一行代碼?

+2

你爲什麼想這樣做? –

+0

pdb幾乎可以肯定地做到這一點...不知道如何雖然手... –

+0

我不知道爲什麼這是downvoted。我認爲這是一個有趣的問題。 –

回答

1

嘗試dis模塊:

>>> cc=compile(""" 
def func():print(func1(2)) 

def func1(x): return x**2 

func() 
print ("I am last") 
""" 
,"filename","exec") 


>>> eval (cc) 
4 
I am last 

>>> dis.dis(cc) 
    2   0 LOAD_CONST    0 (<code object func at 0x9ccf770, file "gf", line 2>) 
       3 MAKE_FUNCTION   0 
       6 STORE_NAME    0 (func) 

    4   9 LOAD_CONST    1 (<code object func1 at 0x9cf63c8, file "gf", line 4>) 
      12 MAKE_FUNCTION   0 
      15 STORE_NAME    1 (func1) 

    6   18 LOAD_NAME    0 (func) 
      21 CALL_FUNCTION   0 
      24 POP_TOP    

    7   25 LOAD_NAME    2 (print) 
      28 LOAD_CONST    2 ('I am last') 
      31 CALL_FUNCTION   1 
      34 POP_TOP    
      35 LOAD_CONST    3 (None) 
      38 RETURN_VALUE   
相關問題