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

У меня большой исходный репозиторий, разделенный на несколько проектов. Я хотел бы подготовить отчет о состоянии исходного кода с указанием проблемных областей, которые необходимо решить. В частности, я хотел бы вызвать процедуры с высокой цикломатической сложностью, выявить повторение и,...