源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2020-04-23 10:22 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:python 生成目录树及显示文件大小的代码
比如 1--1      2--1           2           3--1                2                3      3--1           2           3 交错的层级关系,刚开始感觉很乱没有想明白,后来终于抓住了关键。只要算出每个层次的深度,就好办了。 我定义了一个rank,进入一个子文件夹时,让rank+1,遍历完子文件夹rank就-1。 如图充分说明了递归、遍历的顺序以及rank值变化:(丑了点。。。) [img]http://files.jb51.net/upload/20090723233213730.JPG[/img] 下面放代码:
[u]复制代码[/u] 代码如下:
''' 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生成的好。。。。。。。 [img]http://files.jb51.net/upload/20090723233213994.jpg[/img]
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部