Я работаю над созданием каталога пути к файлу на основе метода вызова и имени сценария сценария, который вызывает его перед ним, не передавая никакой информации. Идея состоит в том, что пользователь должен написать очень упрощенный файл .py с очень небольшим знанием внутренних методов вызываемого сценария, и поэтому ничего не должно быть передано пользователем пользователем.Получение имени файла скрипта python, вызвавшего функцию
Мне удалось получить имя метода вызывающих скриптов, который использует тестовый файл, с модулем , проверяющим, но, как ни странно, у меня возникли проблемы с получением имени фактического файла .py, который вызвал второй .py-файл со второй точки зрения py.
Чтобы уточнить, это то, что я пытаюсь сделать:
---Script1.py---
import Script2
userMethod(self):
callScript = Script2.Script2Class()
callScript.execute()
---Script2.py---
class Script2Class(object):
def execute(self):
# Other code above this
self.getPathInfo()
def getPathInfo(self):
# Code needed to obtain original scripts filename (the part I've been stumped with)
Я не имея много удачи со стеком, который, как я получаю имя Вызов методов : Я просто не смотрю в нужное место в стеке, или я пропустил что-то очевидное здесь?
Другой дубликат: [Определите, где функция была выполнена?] (Http://stackoverflow.com/q/16305867) –