Я хотел бы сравнить данные двух файлов и сохранить отчет в другом файле. Я попытался использовать winmerge, вызвав cmd.exe с помощью модуля подпроцесса в python3.2. я смог получить отчет о разнице, но не смог сохранить этот отчет .Есть ли способ с помощью winmerge или любых других инструментов сравнения (diffmerge/kdiff3) сохранить отчет о различиях с помощью cmd.exe в windows7?пожалуйста, помогите
сравнение двух файлов и сохранение отчета в любом другом файле
Ответы (1)
Хотя ваш вопрос довольно старый, я удивляюсь, что на него еще не ответили. Я искал себе ответ и, как ни странно, нашел твой. Возможно, вы смешиваете довольно много вопросов в одном письме. Поэтому я решил ответить на основной заголовок, где, как я полагаю, вы пытаетесь сравнить содержимое файлов, читаемое человеком.
Для сравнения двух файлов существует библиотека difflib. который является частью дистрибутива Python.
Кстати, пример создания утилиты для сравнения файлов можно найти на сайте документации Python.
Ссылка находится здесь: Помощники для вычисления дельты
Оттуда вы можете научиться создавать опции и сохранять дельты, например. текстовый файл или что-то в этом роде. Некоторые из этих примеров также содержат вывод, похожий на git-difference, который, возможно, поможет вам решить ваш вопрос.
Это означает, что если вы можете выполнить свой скрипт, другие дельта-инструменты не требуются. Нет особого смысла вызывать другие инструменты через Python на CMD и пытаться ими управлять... :)
Возможно, вам также поможет этот веб-сайт с пояснениями и примерами кода: difflib — Сравните последовательности
Я надеюсь, что это поможет вам немного.
РЕДАКТИРОВАТЬ: я забыл упомянуть, что последний сайт содержит простой пример создания вывода HTML: Вывод HTML