使用Python的os模块中的stat()方法可以获取文件的大小和修改时间,然后使用Python内置的difflib模块比较两个列表的差异,从而比较文件名列表的大小和修改时间。
代码示例:
import os import difflib
list1 = ['file1.txt', 'file2.txt', 'file3.txt'] list2 = ['file1.txt', 'file3.txt', 'file4.txt']
d = difflib.Differ() diff = d.compare(list1, list2)
for line in diff: if line.startswith('-'): filename = line.strip('- ').rstrip() filename = os.path.abspath(filename) # 获取文件信息 try: stat = os.stat(filename) except OSError: # 文件不存在,或没有访问权限 print(f'Error: can not access file {filename}') continue print(f'File {filename}: size={stat.st_size}, mtime={stat.st_mtime}') elif line.startswith('?'): continue else: filename = line.strip('+ ').rstrip() filename = os.path.abspath(filename) # 获取文件信息 try: stat = os.stat(filename) except OSError: # 文件不存在,或没有访问权限 print(f'Error: can not access file {filename}') continue print(f'File {filename}: size={stat.st_size}, mtime={stat.st_mtime}')
上一篇:比较两个文件名并提取差异