Относительный импорт Python, вызывающий ошибки Pylint - PullRequest
1 голос
/ 07 ноября 2019

Вот очень упрощенная версия структуры моих проектов для программы, которая будет выполняться один раз, а затем завершится:

python-app
├── Dockerfile
└── src
    └── utils
            tools.py
            __init__.py
    └── manage
        └── package_a
            do_something.py
            __init__.py
        __init__.py
    main.py
    __init__.py

В main.py у меня есть from manage.package_a import do_something, а вdo_something.py У меня есть from utils.tools import a_function. Я запускаю python src/main.py, и программа запускает ожидаемый. Однако в VS Code и при запуске pylint я получаю следующие ошибки в main.py и do_something.py.

main.py: Unable to import 'package_a'pylint(import-error)

do_something.py: No name 'utils' in module 'tools'pylint(no-name-in-module)

Я что-то упускаю из-за относительного импорта, что является абсолютно плохой практикой / неверно? Или это проблема Pylint, не признающая, что программа всегда будет запускаться из основного метода?

...