以文件树的形式展示目标文件夹
指定一个目标路径和需要忽略的文件,即可可视化文件夹下的所有文件
import os
def display_file_tree(directory, indent="", ignore_list=None):
# 如果 ignore_list 为 None,初始化为空列表
if ignore_list is None:
ignore_list = []
# 获取目录中的所有文件和文件夹
try:
items = os.listdir(directory)
except PermissionError:
print(indent + "├── [无权限访问]")
return
# 按名称排序,便于查看
items.sort()
# 遍历每个项目
for index, item in enumerate(items):
# 跳过 ignore_list 中的文件或文件夹
if item in ignore_list:
continue
# 构建完整路径
path = os.path.join(directory, item)
# 判断是否为最后一个项目,用于调整前缀符号
is_last = index == (len(items) - 1)
# 设置显示符号
current_prefix = "└── " if is_last else "├── "
# 打印当前项目
print(indent + current_prefix + item)
# 如果是文件夹,递归调用以展示其内容
if os.path.isdir(path):
# 子目录的前缀缩进
next_indent = indent + (" " if is_last else "│ ")
display_file_tree(path, next_indent, ignore_list)
# 使用示例:替换为你想查看的目录路径
directory_path = r"D:\GitProgress\theAllTools\hucii写代码"
# 定义忽略列表
ignore_list = ["__pycache__", "start.py", "moduleB.py"]
print(f"文件树: {directory_path}")
display_file_tree(directory_path, ignore_list=ignore_list)