Как я могу указать pyreverse включать классы в модули внутри пакетов?

#python #uml #pylint #class-diagram #pyreverse

#python #uml #pylint #диаграмма классов #pyreverse

Вопрос:

У меня есть такая структура папок:

 .
└── src
    ├── a
    │   ├── __init__.py
    │   ├── a.py
    │   └── b.py
    └── main.py
 

Содержимое a/a.py:

 class A:
    def __init__(self):
        self.name = 'a'
 

Содержимое a/b.py

 from a.a import A


class B(A):
    def __init__(self):
        self.name = 'b'
 

Содержимое main.py:

 from a.a import A
from a.b import B

print(A().name)
print(B().name)
 

Как вы можете видеть, класс B наследует от класса A

Я подтвердил, что программа работает должным образом, поэтому в коде нет ошибок

Я хочу запустить что-то вроде: pyreverse src/**/* -o png и сгенерировать диаграмму UML, показывающую мне, что класс B наследуется от класса A (у меня более крупный проект со многими другими каталогами, отсюда и причина **/* части).

Однако на данный момент я получаю следующее:

введите описание изображения здесь

Ожидаемое было бы примерно так:

введите описание изображения здесь

Ответ №1:

Отвечая на мой собственный вопрос: ответом было просто записать cd в src / или сделать это:

 export PYTHONPATH="${PYTHONPATH}:${PWD}/src"