невозможно импортировать модуль в Python - PullRequest
0 голосов
/ 07 мая 2020

У меня следующая структура папок.

check_site
- test_site
    -- views.py
- app2
- app3
- modules
    -- url.py
    -- usability.py

модуль ulr.py содержит внутри один класс - Url.py

class URL:
    ...

модуль usability.py содержит один класс, наследующий URL class

from url import URL
class Usability(URL):
    ...

И затем у меня есть view.py, в который мне нужно импортировать класс Usability

from modules.url import URL
from modules.usability import Usability

И вот проблема. Это дает мне ошибку

from url import URL
ModuleNotFoundError: No module named 'url'

Я пытался изменить импорт в usability.py на from modules.url import URL, но в этом случае он дает ошибку в usability.py

Unable to import modules.url

Еще пробовал from .url import URL и from check_site.modules.url import URL Но они тоже не работают

Если кто-то знает, как это исправить, помогите

1 Ответ

0 голосов
/ 07 мая 2020

Проблема здесь, потому что по умолчанию Python ищет файл в текущем каталоге, но файл, который вы хотите импортировать, находится не в том же каталоге, что и ваша программа. Вам следует попробовать sys.path

# some_file.py
import sys
# insert at 1, 0 is the script path (or '' in REPL)
sys.path.insert(1, '/path/to/application/app/folder')

import file

Это должно работать в большинстве случаев.

...