我写这段代码是为了比较日志文件和引用文件,但是,在比较时,日期总是会引起问题,因为引用文件是在日志之前生成的。我希望能够比较特定的行而不是整个文件!这是我的代码:
##HIL_Result =filecmp.cmp(f1, f2)
##print(HIL_Result)
f1=open(file1,'r')
f2=open(file2,'r')
for line1 in f1:
for line2 in f2:
if line1==line2:
print("SAMEn")
else:
print(line1 + line2)
break
f1.close()
f2.close()
这将遍历两个文件的每一行并进行比较。
如果一个文件的行数比另一个多,它就不会迭代较长文件中多余的行。如果需要对每一行进行迭代,请使用zip_longest(f1, f2, fillvalue="")
。
filename1 = r"C:file1.txt"
filename2 = r"C:file2.txt"
with open(filename1) as f1, open(filename2) as f2:
for i, (line1, line2) in enumerate(zip(f1, f2)):
if line1 == line2:
print(f"Line {i} is the same in both files.")
else:
print(f"Line {i} is different.")