Как получить путь к файлу Python, который импортирует определенный пакет? - PullRequest
1 голос
/ 04 июля 2019

Есть файлы питона a.py и b.py. И b.py импортируется в a.py по import b. Как получить абсолютный путь a.py в b.py при запуске a.py?

1 Ответ

0 голосов
/ 04 июля 2019

b.py

import os
import traceback


try: assert 0
except:
    st = traceback.format_stack()
     # format of st --> ['  File "filename", line 1, in <module>\n    import b\n', ... ... ]
    relative_p = st[0].split(',')[0].split(' ')[-1].split('"')[1]
    abs_path = os.path.abspath(relative_p)
    print(abs_path)
    # prints the importer's path, else if no importer, then itself's abs path

# rest of program goes here ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...