import inspect
def foo():
# 获取栈帧的列表
stack = inspect.stack()
# 获取调用者的栈帧,一般是第二个元素
caller_frame = stack[1]
# 获取调用者的信息
caller_info = caller_frame[1:4]
# 打印调用者的文件名、行号、函数名
print(*caller_info)
def bar():
foo()
bar()
import inspect
def foo():
# 获取栈帧的列表
stack = inspect.stack()
# 获取调用者的栈帧,一般是第二个元素
caller_frame = stack[1]
# 获取调用者的信息
caller_info = caller_frame[1:4]
# 打印调用者的文件名、行号、函数名
print(*caller_info)
def bar():
foo()
bar()