gpt4 book ai didi

python - 在python中使用difflib比较两个文件

转载 作者:太空宇宙 更新时间:2023-11-04 03:25:50 24 4
gpt4 key购买 nike

我正在尝试使用 difflib 比较两个文件。比较后,如果未检测到差异,我想打印“No Changes”。如果差异是他们在某些方面。我想打印那些行。

我试过这样的:

with open("compare.txt") as f, open("test.txt") as g:
flines = f.readlines()
glines = g.readlines()
d = difflib.Differ()
diff = d.compare(flines, glines)
print("\n".join(diff))

如果检测到“没有变化”,它将打印文件的内容。但如果没有差异,我想打印“No Changes”。

最佳答案

检查每个元素中的第一个字符是否在开头有 +-(标记该行已更改):

with open("compare.txt") as f, open("test.txt") as g:
flines = f.readlines()
glines = g.readlines()
d = difflib.Differ()
diffs = [x for x in d.compare(flines, glines) if x[0] in ('+', '-')]
if diffs:
# all rows with changes
else:
print('No changes')

关于python - 在python中使用difflib比较两个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33050816/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com