【Python 获取文件夹目录树状结构可视化】之简单优雅实现Tree

树状结构目录清晰明了,递归也是程序语言常见且重要的函数技能,用Python语言轻松实现打印出完美的Tree 状结构。

Python 代码

import os


def get_tree_directory(path: str, prefix=""):

    # 获取当前目录下所有的文件和文件夹
    file_list = os.listdir(path)

    for index, file in enumerate(file_list):

            # 判断当前目录下的最后一个节点(无论是文件还是目录对象)
        is_last = index == len(file_list) - 1

        label = "└──" if is_last else "├──"
        print(f'{prefix}{label}{file}')

        # 尝试组合新的路径目录
        new_path = os.path.join(path, file)

        if os.path.isdir(new_path):
            # 设置层级递进规则,递归调用
            new_prefix = prefix + "    " if is_last else  prefix +"|    "
            get_tree_directory(new_path, new_prefix)


if __name__ == '__main__':

    path_input = r'E:\LMovie' # 手动填写需要打印成 Tree 结构的路径 ,使用原始字符串(推荐)
    get_tree_directory(path_input)
代码执行过程

功能打印

代码打印和文件目录对比

比较

总结

熟练掌握递归的技巧,结合Python语言灵活强大的功能,实现类似需求也能赋予工作更大的便利。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值