Let's say I have the following directory structure:
parent_dir/
foo_dir/
foo.py
bar_dir/
bar.py
If I wanted to import bar.py
from within foo.py
, how would I do that?
Let's say I have the following directory structure:
parent_dir/
foo_dir/
foo.py
bar_dir/
bar.py
If I wanted to import bar.py
from within foo.py
, how would I do that?
If all occurring directories are Python packages, i.e. they all contain __init__.py
, then you can use
from ..bar_dir import bar
If the directories aren't Python packages, you can do this by messing around with sys.path
, but you shouldn't.
You can use the sys
and os
modules for generalized imports. In foo.py
start with the lines
import sys
import os
sys.path.append(os.path.abspath('../bar_dir'))
import bar
Let's say if you have following structure:
root
|_ productconst.py
|_ products
|_ __init__.py
And if you would like to import productconst in products.__init__
, then following can be used :
from ..productconst import *
If you're having issues in python 3+, the following worked for me using sys.path.append("..")
.
sys.path.append("..")
from bar_dir import bar