Импортировать модуль Python из родительского подкаталога - PullRequest
0 голосов
/ 29 апреля 2019

Я пробовал разные методы, показанные на нескольких сайтах, но не смог выяснить проблему.Мне нужно импортировать "demo1.py" в "demo2.py".Вот моя иерархия папок:

Project:___ __init__.py
         |_ main.py
         |_ Package1:___ __init__.py
         |            |_ demo1.py
         |_ Package2:___ __init__.py
                      |_ demo2.py

Когда у меня есть это в main.py, оно работает.

import Package1.demo1
import Package2.demo2

Но это не работает в demo2.py

import Package1.demo1

И этого не происходит:

import Project.Package1.demo1

Я пытался следовать этому уроку https://www.programiz.com/python-programming/package, но я делаю что-то не так.Попробовал переименовать "main.py" во что-то другое, если это вызывает проблемы, но это тоже не помогло.

Редактировать: Решение найдено

from sys import  path 
import os

par_dir = os.path.abspath(os.path.join(os.path.dirname( __file__ ), os.pardir))
path.append(par_dir)
import Package1.demo

1 Ответ

0 голосов
/ 29 апреля 2019
from sys import path
path.append("project-path")

Определите его внутри demo1 или demo2, оно будет работать. Вы можете проверить этот вопрос .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...