比较python中两个文件的最佳方法,为什么?

时间:2018-07-31 11:16:12

标签: python hashlib

我有两个文件a.txt和b.txt,所以我正在尝试使用下面的哈希进行比较。

#getting hash of files and comparing
file1 = hashlib.md5(open('a.txt', 'rb').read()).hexdigest()
file2 = hashlib.md5(open('b.txt', 'rb').read()).hexdigest() 
file1==file2--> returns True or False

这是一种方法,我们也可以使用filecmp如下

filecmp.cmp('a.txt','b.txt')--> returns True or False

在这两种方式中哪个更好,为什么?

1 个答案:

答案 0 :(得分:2)

filecmp.cmp('a.txt','b.txt', shallow=False)就是比较两个文件所需的。

hashlib.md5()将增加复杂性,增加CPU占用率,花费更长的时间,最重要的是,当2个不同的文件具有相同的md5哈希值时,它将给出错误的结果。