Нет, такого программного обеспечения не существует, потому что было бы чрезвычайно сложно интроспективно понять все возможные ветви, которые код мог бы выполнить на основе различных входных данных (если вы рассмотрите метапрограммирование , все станет еще сложнее ).
Что вы можете сделать, это экстраполировать, сколько / какой код был (не) выполнен во время пробного запуска, а затем оценить себя, можно ли безопасно удалить такой код. То, что вы хотите найти, это что-то вроде покрытие кода утилита.
В питоне два хорошо известных: figleaf и охват .
РЕДАКТИРОВАТЬ: другим подходом может быть использование профилировщика (и, возможно, более конкретно, графика вызовов, такого как этот ), чтобы проверить, что все ваши функции и классы появляются в сам график (и затем проверка вручную, если они не появляются ...)