Как я могу импортировать файл, который находится в родительском каталоге в пакете Python (который не находится в пути) в файл в дочернем каталоге?
Я не совсем понимаю словарный запасупаковки python в качестве примера:
dir1/
__init__.py
runner.py
in_dir1.py
dir2/
__init__.py
in_dir2.py
dir1 / in_dir1.py:
def example():
print "Hello from dir1/in_dir1.example()"
dir1 / dir2 / in_dir2.py
import in_dir1 #or whatever this should be to make this work
print "Inside in_dir2.py, calling in_dir1.example()"
print in_dir1.example()
Учитываячто dir1
не находится на пути Python, я ищу лучший способ импортировать in_dir1
в in_dir2
.
Я пытался from .. import in_dir1
и from ..dir1 import in_dir1
на основе этого Q/ A но ни один не работает.Как правильно выполнить это намерение? Этот Q / A , кажется, содержит ответ;однако, я не совсем уверен, что с этим делать / как на самом деле решить мою проблему, используя PEP 366
Оба __init__.py
файла пусты, и я на v2.6 .
Я пытаюсь сделать это без использования хаков путей, которые Google продолжает обнаруживать.