Question:
my src path looks like this:
src\root\sub1
src\root\sub2
My main code is in root, lets say main.py and there is also a lib.py.
In sub1 there if foo1.py and sub2 foo2.py
Sorry for the long introduction...please don't stop reading... :-(
In both sub1 and sub2 there is an empty __init__.py for making them a package.
Ok the problem:
this works fine:
main.py
from sub1 import foo1
from sub1 import foo2
However, in foo1 and foo2 I have this line "import lib".
So lib.py is not in the same path as foo1.py and foo2.py, it seems to find lib.py in a higher path.
(Reason for this is the import from main , which has lib.py in the same path?)
However, if I'm in the subfolders sub1 or sub2, and I run foo1.py or foo2.py standalone, they can't find lib.py. Yeah of course.
So, how to avoid this? How can I refer back to a module higher in the "hierarchical" path.
Up is so easy.. just say import foo.foo2.foo3. But up, what is the correct way of doing that?
Something to put in __init__.py, like sys.path.apppend('..')? Looks ugly to me....
Or, the way how I share lib for both files is wrong, please let me know.
Anyway, I need this behavior because of my unittest structure.
Thanks,
Vincent