python实现树形打印目录结构-创新互联

本文实例为大家分享了python树形打印目录结构的具体代码,供大家参考,具体内容如下

创新互联主营姑苏网站建设的网络公司,主营网站建设方案,成都app软件开发公司,姑苏h5小程序制作搭建,姑苏网站营销推广欢迎姑苏等地区企业咨询

前言

这两天整理数据文件的时候发现,一层层的点击文件夹查看很繁琐,于是想写一个工具来递归打印出文件目录的树形结构,网上找了一些资料几乎都是使用的os.walk, 调试了以后发现返回的貌似的是一个“生成器”,只需要for循环即可,可是这样得到的好像是BFS的结构,并不是我想要的树形结构,最后终于发现了os.listdir这个函数,可是使用它来写一个深度优先搜索,只要递归调用就能解决我的问题。

代码

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#a test for traverse directory

__author__ = 'AlbertS'

import os
import os.path

def dfs_showdir(path, depth):
 if depth == 0:
 print("root:[" + path + "]")

 for item in os.listdir(path):
 if '.git' not in item:
  print("| " * depth + "+--" + item)

  newitem = path +'/'+ item
  if os.path.isdir(newitem):
  dfs_showdir(newitem, depth +1)

if __name__ == '__main__':
 dfs_showdir('.', 0)

本文标题:python实现树形打印目录结构-创新互联
URL分享:http://myzitong.com/article/hoshd.html