текущий путь к «from» при импорте файла

#python #python-import #working-directory #python-os

#python #python-импорт #рабочий каталог #python-os

Вопрос:

На моем компьютере с ubuntu 18.4 я запускаю с pycharm этот скрипт

file1_dir1.py

 from project.dir2 import file1_dir2
from project.dir1 import file1_dir1
  

но когда я копирую его на виртуальную машину Google с той же ОС, я получаю

Нет модуля с именем «project»

или то же самое в Windows.. как найти текущий каталог в «from», и это возможно сделать динамическим для любой ОС?

Это дерево каталогов для моего проекта

 project
            |
            |------- __init__.py
            |
            |------- dir1/
            |           |
            |           |----- __init__.py
            |           |----- file1_dir1.py
            |           |----- file2_dir1.py
            |
            |------- dir2/
            |           |
            |           |----- __init__.py
            |           |----- file1_dir2.py
            |           |----- file2_dir2.py
  

Комментарии:

1. Я не уверен, о чем вы спрашиваете. Вы имеете в виду, как получить текущий каталог, в котором находится скрипт python? os.getcwd() возвращает текущий рабочий каталог

2. Я имею в виду, чтобы узнать, какой путь мне нужно ввести в «from dir1 import file1_dir1» или «from project.dir1 import file1_dir1», поскольку я получаю ошибку, о которой я упоминал

3. В каком из этих каталогов, если таковые имеются, находятся sys.path ?

4. Вы проверяли from dir1 import file1_dir1 или from dir1.fire1_dir1 import * ?

5. да, я пробовал в нескольких комбинациях.. но без каких-либо успехов для виртуальной машины.. В Windows это работает как ‘from dir1 import file1_dir1’