How do I import a Python script from a sibling directory? How do I import a Python script from a sibling directory? python python

How do I import a Python script from a sibling directory?


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 sysimport ossys.path.append(os.path.abspath('../bar_dir'))import bar


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