There are python files a.py and b.py. And b.py is imported in a.py by import b.
How to get the absolute path of a.py in b.py when a.py runs?
            Asked
            
        
        
            Active
            
        
            Viewed 43 times
        
    1
            
            
        - 
                    3Possible duplicate of [How to retrieve a module's path?](https://stackoverflow.com/questions/247770/how-to-retrieve-a-modules-path) – bhansa Jul 04 '19 at 09:08
1 Answers
0
            
            
        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 ...
 
     
     
    