python实现tree命令的使用示例

 更新时间:2023年09月22日 11:15:22   作者:荒-于嬉  
本文主要介绍了python实现tree命令的使用示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

把所有的文档都传到了git上,但是内容过多找起来不方便,突发奇想如果能在readme中,递归列出所有文件同时添加上对应的地址,这样只需要搜索到对应的文件点击就能跳转过去了…列出文件总得有个显示格式,所以就按照tree的来了…

用python实现命令tree的效果

首先,这是tree的效果

用到的符号实际只有三个 ├─ │ └─.

我本以为会挺难的,因为百度了半天各种都有,但是没找到一个做出tree这个效果的

最后因为是新手,所以代码写的可能有很多不足.

#!/usr/bin/env python
# -*-coding:utf-8-*-
'''
    describe:
'''
import os
# 黑名单 不想列出的目录
blacklist = [".git",".idea"]
# 指定列出那个目录下的所有内容
rpath = "D:\\document"
def DirAndFile(path,symbol = ""):
    # 列出所有目录和文件 同时统计数量用于判断
    fileList = os.listdir(path)
    totleNum = len(fileList)
    num = 1
    for i in fileList:
        # 如果是黑名单目录 那么直接跳过
        if i in blacklist:
            num = num + 1
            continue
        # 路径合并 递归调用时继续向下传递
        tmpPath = os.path.join(path,i)
        if os.path.isfile(tmpPath):
            # 判断是否为最后一个
            if num == totleNum:
                print(symbol + "  └─ ",i)
            else:
                print(symbol + "  ├─ ",i)
        else:
            # 判断目录是否为最后一个 如果是则使用不同的符号
            if num == totleNum:
                print(symbol + "  └─ ",i)
                DirAndFile(tmpPath, symbol + "     ")
            else:
                print(symbol + "  ├─ ", i)
                DirAndFile(tmpPath,symbol + "  │  ")
        num = num + 1
if __name__ == '__main__':
    print(rpath)
    DirAndFile(rpath)

最后,放一个效果图

到此这篇关于python实现tree命令的使用示例的文章就介绍到这了,更多相关python tree命令内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!  

相关文章

  • 基于python的Paxos算法实现

    基于python的Paxos算法实现

    这篇文章主要介绍了基于python的Paxos算法实现,理解一个算法最快,最深刻的做法,我觉着可能是自己手动实现,虽然项目中不用自己实现,有已经封装好的算法库,供我们调用,我觉着还是有必要自己亲自实践一下,需要的朋友可以参考下
    2019-07-07
  • python算法与数据结构之冒泡排序实例详解

    python算法与数据结构之冒泡排序实例详解

    冒泡排序(英语:Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。这篇文章主要介绍了python算法与数据结构-冒泡排序(32)的相关资料,需要的朋友可以参考下
    2019-06-06
  • python list语法学习(带例子)

    python list语法学习(带例子)

    python list语法学习
    2013-11-11
  • OpenCV-Python实现通用形态学函数

    OpenCV-Python实现通用形态学函数

    本文将结合实例代码,介绍OpenCV-Python实现通用形态学函数,包含开运算,闭运算等复杂的形态学运算,需要的朋友们下面随着小编来一起学习学习吧
    2021-06-06
  • python查看包版本、更新单个包、卸载单个包的操作方法

    python查看包版本、更新单个包、卸载单个包的操作方法

    这篇文章主要介绍了python查看包版本、更新单个包、卸载单个包,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-12-12
  • python 包之 APScheduler 定时任务

    python 包之 APScheduler 定时任务

    这篇文章主要介绍了python 包之 APScheduler 定时任务,文章基于python的相关资料展开主题内容,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-04-04
  • 如何在pycharm安装torch包

    如何在pycharm安装torch包

    这篇文章主要介绍了如何在pycharm安装torch包方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • python爬虫xpath模块简介示例代码

    python爬虫xpath模块简介示例代码

    xpath是最常用且最便捷高效的一种解析方式,通用型强,其不仅可以用于python语言中,还可以用于其他语言中,数据解析建议首先xpath,这篇文章主要介绍了python爬虫xpath模块简介,需要的朋友可以参考下
    2023-02-02
  • Python循环语句之while循环和for循环详解

    Python循环语句之while循环和for循环详解

    在Python中,循环语句用于重复执行一段代码,直到满足某个条件为止,在Python中,有两种主要的循环语句:for循环和while循环,本文就来给大家介绍一下这两个循环的用法,需要的朋友可以参考下
    2023-08-08
  • python得到windows自启动列表的方法

    python得到windows自启动列表的方法

    今天小编就为大家分享一篇python得到windows自启动列表的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10

最新评论