Мне нужно сравнить два файла .csv (файлы более 65000 строк). Найдите строки, которых нет во втором файле. Я использую diffflib.ndiff:
for line in difflib.ndiff(text1, text2):
print(line,)
Но получаю неожиданные результаты. Функция находит две одинаковые строки и помечает их как разные:
+ Gr4,DQ_3Gb_1m_DR_926_23489,100,,,70,,
- Gr4,DQ_3Gb_1m_DR_926_23489,100,,,70,,
- В чем может быть проблема?
- Каким может быть подходящий способ найти различия?
2.
from itertools import izip_longest
l1 = map(lambda x: x.strip(), list(open('test1.txt')))
l2 = map(lambda x: x.strip(), list(open('test2.txt')))
diff_list = izip_longest(l1, l2)
for diff in diff_list:
print '%s %s %s' % (
diff[0] or '',
'==' if diff[0] == diff[1] else '!=',
diff[1] or '',
)
Я попытался использовать следующий код для сравнения файлов, но получил тот же неожиданный результат, почему это так?
Gr4,DQ_1Gb_1m_DR_926_23486,100,,,70,,!=Gr4,DQ_3Gb_1m_DR_926_23489,100,,,70,,
Gr4,DQ_3Gb_1m_DR_926_23489,100,,,70,,!=Gr4,DQ_1Gb_1m_DR_926_23486,100,,,70,,