📜  Python| filecmp.cmpfiles() 方法(1)

📅  最后修改于: 2023-12-03 15:19:13.465000             🧑  作者: Mango

Python | filecmp.cmpfiles() 方法

filecmp.cmpfiles() 方法用于比较两个目录中的文件。

语法
filecmp.cmpfiles(dir1, dir2, common, shallow=True)
参数说明
  • dir1:要比较的第一个目录路径。
  • dir2:要比较的第二个目录路径。
  • common:只包含要比较的文件的列表。
  • shallow:如果为True,比较现有文件的内容。如果为False,则查看文件元数据(权限、时间戳等)的彻底变更。
返回值

该方法返回一个元组 (match, mismatch, errors),其中:

  • match:包含目录中匹配文件的名称的列表。
  • mismatch:包含目录中不匹配文件的名称的三个元素的元组列表(源目录文件,目标目录文件,错误信息)。
  • errors:包含在两个目录中都找不到的文件名的列表。
示例
import filecmp

result = filecmp.cmpfiles('dir1', 'dir2', ['file1.txt', 'file2.txt'])
print(result)

输出结果:

(['file1.txt'], [], [])
注意事项
  1. 如果指定的文件列表为空,则使用目录中的所有文件进行比较。
  2. 默认情况下,该方法将快速查看比较的文件的内容,只在有必要的情况下检查元数据。如果要比较文件的完整内容,请将 shallow 参数设置为 False
  3. 如果两个目录中都不存在指定的文件列表,该方法将返回空元组。