用Python编写生成树状结构的文件目录的脚本的教程

yipeiwu_com6年前Python基础

有时候需要罗列下U盘等移动设备或一个程序下面的目录结构的需求。基于这样的需求个人整理了一个使用Python的小工具,期望对有这方面需求的朋友有所帮助。以下为具体代码:

如果你所有要求的文件目录不需要完整的文件路径的话,直接更换下面的注释代码即可~
 

# -*- coding:utf-8 -*-
import os
def list_files(startPath):
  fileSave = open('list.txt','w')
  for root, dirs, files in os.walk(startPath):
    level = root.replace(startPath, '').count(os.sep)
    indent = ' ' * 1 * level
    #fileSave.write('{}{}/'.format(indent, os.path.basename(root)) + '\n')
    fileSave.write('{}{}\\'.format(indent, os.path.abspath(root)) + '\n')
    subIndent = ' ' * 1 * (level + 1)
    for f in files:
      #fileSave.write('{}{}'.format(subIndent, f) + '\n')
      fileSave.write('{}{}{}'.format(subIndent, os.path.abspath(root), f) + '\n')
  fileSave.close()
 
dir = raw_input('please input the path:')
list_files(dir)

相关文章

利用python实现周期财务统计可视化

利用python实现周期财务统计可视化

正文之前 上午给爸爸打了个电话庆祝他50岁生日,在此之前搞了个大扫除,看了会知乎,到实验室已经十一点多了。约喜欢的妹子吃饭失败,以至于工作积极性收到了打击,所以就写个程序来统计下开学十一...

使用python实现拉钩网上的FizzBuzzWhizz问题示例

最近好多分享这个问题的代码,题目说的是用面向对象或者函数式编程,下面是PYTHON的实现示例 复制代码 代码如下:#!/usr/bin/python#encoding:utf8 '''T...

Python 26进制计算实现方法

本文实例讲述了Python 26进制计算方法。分享给大家供大家参考。具体分析如下: 题目是这样的: 假设A=1,B=2,C=3...AA=27,AB=28...AAA=xxx(表示某个数...

Python面向对象之多态原理与用法案例分析

Python面向对象之多态原理与用法案例分析

本文实例讲述了Python面向对象之多态原理与用法。分享给大家供大家参考,具体如下: 目标 多态 面向对象三大特性 封装 根据 职责 将 属性 和 方法 封装 到一个抽象的 类 中 定义...

基于Python对象引用、可变性和垃圾回收详解

基于Python对象引用、可变性和垃圾回收详解

变量不是盒子 在示例所示的交互式控制台中,无法使用“变量是盒子”做解释。图说明了在 Python 中为什么不能使用盒子比喻,而便利贴则指出了变量的正确工作方式。 变量 a 和 b 引用同...