ModuleNotFoundError при попытке импортировать файл python, который сам импортирует файл в тот же каталог - PullRequest
0 голосов
/ 18 июня 2020

У меня есть проект python со следующей структурой файлов:

- Project
     - Driver
          - __init__.py
          - driver.py
          - helper_functions.py
     - test.py

первые две строки внутри driver.py:

import helper_functions as hf
import socket

все содержимое test. py:

from Driver.driver import driver

driver = driver("192.168.1.101",2268)

Когда я запускаю test.py, я получаю сообщение об ошибке

    import helper_functions as hf
ModuleNotFoundError: No module named 'helper_functions'

Если я изменяю driver.py на

import Driver.helper_functions as hf
import socket

это устраняет проблему с запуском test.py, но затем любые файлы в каталоге драйверов, которые пытаются импортировать драйвер, например, если у меня есть

from driver import driver

в моем init .py файле, при его запуске возникает ошибка

    import Driver.helper_functions as hf
ModuleNotFoundError: No module named 'Driver'

как я могу исправить это, чтобы я мог импортировать драйвер из папки драйверов и за ее пределами

1 Ответ

0 голосов
/ 18 июня 2020

Вы можете просто изменить

import helper_functions as hf

на

from Driver import helper_functions as hf 

или на

from . import helper_functions

Первый - это импорт с абсолютным путем, второй , является относительным.

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