【python】打印目录树

需求

输入一个文件夹地址,打印出文件夹内部结构,即目录树

效果预览

输入:

请输入文件夹路径: 

输出:

└── controller/
    ├── GoodsController.java
    ├── RecordController.java
    ├── RedisController.java
    ├── SeckillController.java
└── domain/
    ├── Goods.java
    ├── Record.java
└── mapper/
    ├── GoodsMapper.java
    ├── RecordMapper.java
├── Project4Application.java
└── service/
    ├── GoodsService.java
    └── impl/
        ├── GoodsServiceImpl.java
        ├── RecordServiceImpl.java
        ├── RedisServiceImpl.java
        ├── SeckillServiceImpl.java
    ├── RecordService.java
    ├── RedisService.java
    ├── SeckillService.java
└── util/
    ├── CORSFilter.java
    ├── R.java
    ├── RedisConfig.java
    ├── ZookeeperConfig.java
    ├── ZooKeeperUtils.java

代码

import os


def print_directory_tree(path, prefix=''):
    # 获取当前路径下的所有文件和文件夹
    items = os.listdir(path)

    # 遍历所有项
    for item in items:
        # 组合完整路径
        item_path = os.path.join(path, item)

        # 判断是文件还是文件夹
        if os.path.isfile(item_path):
            # 是文件,直接打印
            print(f"{prefix}├── {item}")
        elif os.path.isdir(item_path):
            # 是文件夹,打印后递归调用打印其子目录
            print(f"{prefix}└── {item}/")
            print_directory_tree(item_path, prefix + '    ')


# 输入要打印的文件夹路径
folder_path = input("请输入文件夹路径: ")

# 调用函数打印文件目录树
print_directory_tree(folder_path)
posted @ 2024-01-18 14:02  jijfurhg  阅读(8)  评论(0)    收藏  举报