python 生成目录树及显示文件大小的代码

时间:2022-10-24 18:30:27 

比如

1--1

     2--1

          2

          3--1

               2

               3

     3--1

          2

          3

交错的层级关系,刚开始感觉很乱没有想明白,后来终于抓住了关键。只要算出每个层次的深度,就好办了。

我定义了一个rank,进入一个子文件夹时,让rank+1,遍历完子文件夹rank就-1。

如图充分说明了递归、遍历的顺序以及rank值变化:(丑了点。。。)
python 生成目录树及显示文件大小的代码
下面放代码:


'''
Created on Jul 22, 2009

@author: dirful
'''
import os
class dir(object):

def __init__(self):
self.CONST =0
self.SPACE =""
self.list =[]
def p(self,url):
files = os.listdir(r''+url)
for file in files:
myfile = url + "\\"+file
size = os.path.getsize(myfile)
if os.path.isfile(myfile):
self.list.append(str(self.SPACE)+"|____"+file +" "+ str(size)+"\n")
# print str(self.SPACE)+"|____"+file +" "+ str(size)

if os.path.isdir(myfile) :
self.list.append(str(self.SPACE)+"|____"+file + "\n")
#get into the sub-directory,add "| "
self.SPACE = self.SPACE+"| "
self.p(myfile)
#when sub-directory of iteration is finished,reduce "| "
self.SPACE = self.SPACE[:-5]
return self.list

def writeList(self,url):
f = open(url,'w')
f.writelines(self.list)
print "ok"
f.close()

if __name__ == '__main__':
d=dir()
d.p("E:/eclipse")
d.writeList("c:3.txt")


生成树如下。没有微软tree生成的好。。。。。。。

python 生成目录树及显示文件大小的代码

标签:python,生成目录树
0
投稿

猜你喜欢

  • tensorboard实现同时显示训练曲线和测试曲线

    2023-05-18 04:55:34
  • 网站设计做好超级链接的重要性

    2007-09-14 11:19:00
  • Python读取Pickle文件信息并计算与当前时间间隔的方法分析

    2023-11-17 20:18:13
  • Python内建模块struct实例详解

    2022-07-06 02:10:18
  • JavaScript 设计模式 富有表现力的Javascript(一)

    2023-08-25 07:42:15
  • web开发以HTML为中心

    2008-02-13 08:14:00
  • python测试开发django之使用supervisord 后台启动celery 服务(worker/beat)

    2023-10-14 05:55:53
  • opencv-python 读取图像并转换颜色空间实例

    2022-04-08 04:02:55
  • Python通过TensorFlow卷积神经网络实现猫狗识别

    2023-09-29 10:59:56
  • JavaScript编写棋盘覆盖代码详解

    2024-04-17 10:30:05
  • Python+matplotlib实现简单曲线的绘制

    2023-01-05 17:21:27
  • 基于win2003虚拟机中apache服务器的访问

    2023-11-14 11:17:08
  • python RC4加密操作示例【测试可用】

    2021-09-23 03:14:24
  • 关于数据库的alter table操作和索引概念

    2009-12-15 21:57:00
  • Mysql Explain 详解

    2010-12-03 16:09:00
  • Django Admin实现上传图片校验功能

    2021-12-12 02:27:03
  • Oracle 函数大全

    2024-01-16 06:13:24
  • css:小技巧大问题,cellSpacing用css样式代替方法,其它样式类似解决!

    2009-10-04 20:35:00
  • Python使用shutil模块实现文件拷贝

    2021-02-01 14:46:28
  • SQLServer 循环批处理

    2024-01-20 02:39:46
  • asp之家 网络编程 m.aspxhome.com