Epydoc является инструментом для генерации документации API от исходного кода Python. Это также генерирует диаграммы классов UML, с помощью Graphviz необычными способами. Вот пример схемы , сгенерированной от исходного кода самого Epydoc.
, поскольку Epydoc выполняет и объектный самоанализ и источник, анализирующий его, может заключить, что больше информации уважает статическим анализаторам кода, таким как Doxygen: это может осмотреть изрядное количество динамично сгенерированных классов и функций, но может также использовать комментарии или неприсвоенные строки как источник документации, например, для переменных и атрибутов общественности класса.
Определенные классы программ хорошего поведения могут быть diagrammable, но в общем случае, это не может быть сделано. Объекты Python могут быть расширены во время выполнения, и объекты любого типа могут быть присвоены любой переменной экземпляра. Выяснение, какие классы объект могут содержать указатели на (состав), потребовало бы полного понимания поведения во время выполнения программы.
поддержка метакласса Python означает, что обоснование о структуре наследования также потребовало бы полного понимания поведения во время выполнения программы.
, Чтобы доказать, что они невозможны, Вы утверждаете что, если бы такой UML diagrammer существовал, то Вы могли взять произвольную программу, преобразовать операторы "останова" в операторы, которые будут влиять на диаграмму UML и использовать UML diagrammer для решения проблемы остановки, которая, как мы знаем, невозможна.
Это стоит упомянуть Gaphor. Python modelling/UML инструмент.
Если Вы используете затмение, возможно PyUML. Не использовали его, все же.
SPE IDE имеет встроенного создателя UML. Просто откройте файлы в SPE и нажмите на вкладку UML.
я не знаю, как comprhensive, который это для Ваших потребностей, но это не требует, чтобы любые дополнительные загрузки или конфигурации использовали.
Sparx Архитектор Предприятия выполняет круглое смещение источника Python. У них есть ограниченный свободным временем испытательный выпуск.