Во время разработки я хочу импортировать класс из file_A.py
в file_B.py
без использования метода sys.path
, описанного здесь .Для справки, мои системные спецификации и дерево файлов приведены ниже.
OS: Ubuntu 18.04
Python: 3.6.4
parent_folder/
├── project_A
│ ├── file_A.py
│ └── __init__.py
├── project_B
│ ├── README.md
│ ├── src
│ │ ├── file_B.py
│ │ └── __init__.py
│ └── test
│ └── unittests.py
В src/file_B.py
я попытался импортировать класс изfile_A.py
, но получил следующую ошибку
from ..project_A.file_A import class_A
ValueError: attempted relative import beyond top-level package
При этом нужно ли указывать ссылку в одном из __init__.py
файлов?Нужно ли создавать файлы __init__.py
в другом месте, чтобы это работало?