|
http://www.iteye.com/topic/494257
- # encoding: utf-8
-
- import os
- class dir(object):
- def __init__(self):
- self.SPACE = ""
- self.list = []
-
- def getCount(self, url):
- files = os.listdir(url)
- count = 0;
- for file in files:
- myfile = url + "\\" + file
- if os.path.isfile(myfile):
- count = count + 1
- return count
- def getDirList(self, url):
- files = os.listdir(url)
- fileNum = self.getCount(url)
- tmpNum = 0
- for file in files:
- myfile = url + "\\" + file
- size = os.path.getsize(myfile)
- if os.path.isfile(myfile):
- tmpNum = tmpNum +1
- if (tmpNum != fileNum):
- self.list.append(str(self.SPACE) + "├─" + file + "\n")
- else:
- self.list.append(str(self.SPACE) + "└─" + file + "\n")
- if os.path.isdir(myfile):
- self.list.append(str(self.SPACE) + "├─" + file + "\n")
- # change into sub directory
- self.SPACE = self.SPACE + "│ "
- self.getDirList(myfile)
- # if iterator of sub directory is finished, reduce "│ "
- self.SPACE = self.SPACE[:-4]
- 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.getDirList("c:/windows") # input directory
- d.writeList("c:/1.txt") # write to file
产生文件的效果图:
-
- 大小: 43.7 KB
|
|
|