2012-12-04 20 views
11

na przykład a.boo metoda wywołania metoda b.foo. W b.foo metody, w jaki sposób można uzyskać nazwę pliku, (nie chcę przechodzić __file__ do b.foo metoda) ...jak uzyskać nazwę pliku wywołującego, nazwę metody w pytonie

+0

dzięki za odpowiedź, a znalazłem tutaj jest teraz dla mnie najlepszy: http://stackoverflow.com/questions/3711184/how-to-use-inspect-to-get-the-callers-info-od -callee –

Odpowiedz

18

można użyć modułu inspect do osiągnięcia tego:

frame = inspect.stack()[1] 
module = inspect.getmodule(frame[0]) 
filename = module.__file__ 
1

co możliwe korzystać z modułu traceback:

import traceback 

i można wydrukować prześledzić wstecz tak:

print traceback.format_exc() 

Nie używam tego od lat, ale powinno wystarczyć, aby zacząć.

Powiązane problemy