在 python 的 filecmp.py 中,有 cmp 函数
def cmp(f1, f2, shallow=1):
s1 = _sig(os.stat(f1))
s2 = _sig(os.stat(f2))
if s1[0] != stat.S_IFREG or s2[0] != stat.S_IFREG:
return False
if shallow and s1 == s2:
return True
if s1[1] != s2[1]:
return False
#content compare
......
因此,当 shallow 为真时,此函数仅比较两个文件的名称 mtime(修改时间)和文件模式。好吧,对我来说,如果这些文件实际上是一个文件,那么它们肯定是相同的。如果它们不是一个文件,那么我认为修改时间不可能相同。
然后,恕我直言,当 shallow = 1 时该函数的唯一用法是检查我们比较的两个文件是否实际上是一个文件~.. 我敢肯定我的猜测是错误的,python 在它的库中不会有这样的废话。 .
请有人告诉我 filecmp.cmp(f1, f2, shallow=1) 在什么情况下有用?