Чтобы импортировать файл, расположенный в трех каталогах, обратно в Python, вы можете использовать различные методы в зависимости от конкретной структуры файла и ваших требований. Вот несколько подходов с примерами кода:
Метод 1. Использование относительных путей
import sys
sys.path.append("../../")
from mymodule import myfile
В этом методе мы изменяем системный путь (sys.path
), чтобы включить нужный каталог, добавляя соответствующее число ../
для перехода на три каталога назад. Затем мы можем импортировать файл непосредственно из нужного модуля.
Метод 2. Использование явных путей к файлам
import imp
myfile = imp.load_source("myfile", "../../../mymodule/myfile.py")
В этом методе мы используем функцию imp.load_source()
для явной загрузки файла, указав путь к файлу относительно текущего местоположения.
Метод 3. Использование модуля pathlib
from pathlib import Path
myfile_path = Path(__file__).resolve().parent.parent.parent / "mymodule" / "myfile.py"
exec(open(myfile_path).read())
Здесь мы используем модуль pathlib
для создания пути к нужному файлу. Мы начинаем с текущего файла (__file__
), определяем его абсолютный путь, а затем перемещаемся на три каталога назад, используя атрибут parent
. Наконец, мы добавляем относительный путь к нужному файлу и используем exec()
для выполнения его содержимого.
Это всего лишь несколько примеров, и подходящий метод зависит от вашей конкретной файловой структуры и требований. Не забудьте изменить количество ../
или имен каталогов по мере необходимости для перехода к правильному местоположению.