Получение информации о вызывающем абоненте в стиле pdb в python - PullRequest
1 голос
/ 13 мая 2009

Допустим, у меня есть следующий метод (в классе или модуле, я не думаю, что это имеет значение):

def someMethod():
    pass

Я хотел бы получить доступ к состоянию вызывающего во время вызова этого метода.

traceback.extract_stack просто дает мне несколько строк о стеке вызовов.

Я бы хотел что-то вроде pdb, в котором я могу установить точку останова в someMethod(), а затем набрать 'u', чтобы подняться в стек вызовов, а затем проверить состояние системы.

1 Ответ

1 голос
/ 13 мая 2009

Я понял это:

import inspect

def callMe():
    tag = ''
    frame = inspect.currentframe()
    try:
        tag = frame.f_back.f_locals['self']._tag
    finally:
        del frame

    return tag
...