Python Glossary English

все Python 3difflibфункция

difflib.ndiff()

форматы различий

Построчное сравнение для человека: '- ' и '+ ' у разных строк и строка '? ' с указанием изменённых символов.

Синтаксис

difflib.ndiff(a, b, linejunk=None, charjunk=IS_CHARACTER_JUNK)

В отличие от unified_diff выводит все строки, включая совпавшие (с префиксом из двух пробелов), поэтому на больших файлах вывод огромный. Строки '? ' подсвечивают символы знаками ^, + и -, а сам результат можно обратить: restore() вернёт любой из исходных списков. Строки должны оканчиваться '\n', иначе подсказки склеятся.

Примеры

import difflib
for line in difflib.ndiff(['one\n', 'abcde\n'], ['one\n', 'abXde\n']):
    print(line, end='')  # → one / - abcde / ?   ^ / + abXde

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности