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() など他の関数を使用することもできます。