# https://docs.python.org/3/library/traceback.html?highlight=traceback
-----------------------------------------------------------
import traceback
class foo():
def boo(self):
# 전체 stack trace 출력
stack = traceback.extract_stack()
for k in stack:
print(k)
# 시작라인 None, 출력라인수 -> 마지막한줄을 의미한다.
stack = traceback.extract_stack(None, 1)
# boo <- 출력
print(stack[0][2])
# https://docs.python.org/3/library/inspect.html?highlight=inspect
-----------------------------------------------------------
import inspect
class foo():
def boo(self):
# 전체 stack trace 출력
stack = inspect.stack()
for k in stack:
print(k)
# boo <- 출력
print(inspect.stack()[0][3])
# 모듈의 파일위치 확인
import random
print(inspect.getfile(random))
C:\Users\Administrator\AppData\Local\Programs\Python\Python37-32\lib\random.py
위 class 분석하여 호출파일 class, function 알아낼수 있다.