pythonでの2つのファイルの差分取得

Pythonでは、difflibモジュールを使用して2つのファイルの差分を比較できます。difflibモジュールはファイル、文字列、シーケンスを比較するためのさまざまなメソッドを提供します。

以下に、2つのファイルの差分を比較するサンプルコードを示します。

import difflib

def compare_files(file1, file2):
    # 读取文件内容
    with open(file1, 'r') as f1, open(file2, 'r') as f2:
        lines1 = f1.readlines()
        lines2 = f2.readlines()

    # 创建比较器对象
    diff = difflib.unified_diff(lines1, lines2)

    # 打印差异内容
    for line in diff:
        print(line)

# 比较文件
compare_files('file1.txt', 'file2.txt')

上述コードでは、まずopen()関数を使って2つのファイルの中身をそれぞれの変数lines1とlines2に読み込みます。

ここで、difflib.unified_diff()関数で比較器オブジェクトを作成し、2つのファイルの差分を返します。

最後に、比較器オブジェクトを反復処理して、差異の内容を出力します。

上のコードは、Unix の diff コマンドと同じ形式で差分を出力する unified_diff() 関数を使用しています。用途に応じて、ndiff()、context_diff()、html_diff() など他の関数を使用することもできます。

bannerAds