我有一个比较文件的小脚本
import filecmp
filecmp.cmp(path1, path2)
如果文件相似,此代码返回True
但如果换行符不同,它会返回False
。 path1
有 Linux 换行符,path2
有 Windows 换行符。
如果文件仅与换行符不同,我希望得到 True
。
是否可以不编辑文件?
最佳答案
使用 filecmp
模块无法做到这一点,因为它只能使用 stat
来比较文件,并且不会让您覆盖比较。
您可以使用 itertools 做一些事情,如 here 所示。 :
from itertools import izip
def areFilesIdentical(filename1, filename2):
with open(filename1, "rtU") as a:
with open(filename2, "rtU") as b:
# Note that "all" and "izip" are lazy
# (will stop at the first line that's not identical)
return all(myprint() and lineA == lineB
for lineA, lineB in izip(a, b))
关于python - 如何使用 python filecmp 忽略不同的换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42981652/