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值变化:(丑了点。。。)
下面放代码:
'''
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,生成目录树
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