使用python比较文件夹中的所有Excel表格名称差异,文件夹中会存在嵌套文件夹,需要递归地遍历文件夹下的所有文件名,帮我整理为完整代码
时间: 2024-12-18 17:17:53 浏览: 45
为了完成这个任务,我们可以使用Python的`os`模块来递归地遍历文件夹,并结合`difflib`库来找出Excel文件名的差异。这是一个完整的代码示例:
```python
import os
import difflib
def find_excel_diff(root_dir1: str, root_dir2: str):
def walk_directory(directory: str):
excel_files1 = [f for f in os.listdir(directory) if is_excel_file(os.path.join(directory, f))]
excel_files2 = [f for f in os.listdir(directory) if is_excel_file(os.path.join(directory, f))]
added_files = set(excel_files2) - set(excel_files1)
removed_files = set(excel_files1) - set(excel_files2)
common_files = set(excel_files1) & set(excel_files2)
print(f"Directory: {directory}")
print(f"Added Excel files: {sorted(added_files)}")
print(f"Common Excel files: {sorted(common_files)}")
print(f"Removed Excel files: {sorted(removed_files)}\n")
# Recursively traverse subdirectories
for subdir in os.scandir(directory):
if subdir.is_dir():
walk_directory(subdir.path)
def is_excel_file(path: str) -> bool:
return path.endswith(('.xls', '.xlsx'))
walk_directory(root_dir1)
walk_directory(root_dir2)
# 替换实际的文件夹路径
root_dir1 = "path_to_folder1"
root_dir2 = "path_to_folder2"
find_excel_diff(root_dir1, root_dir2)
阅读全文
相关推荐


















