发布时间:2019-08-09 10:20:09编辑:auto阅读(1655)
#/usr/bin/python env
from os import listdir , sep
from os.path import abspath, basename, isdir
from sys import argv
def tree(dir, padding, print_files=False):
print padding[:-1] + '+-' + basename(abspath(dir)) + '/'
padding = padding + ' '
files = []
if print_files:
files = listdir(dir)
else:
files = [ x for x in listdir(dir) if isdir(dir + sep +x)]
count = 0
for file in files:
count +=1
print padding + '|'
path = dir + sep + file
if isdir(path):
if count == len(files):
tree(path, padding + ' ', print_files)
else:
tree(path, padding + '|', print_files)
else:
print padding + '+-' + file
def usage():
return '''Usage: %s [-f] <path>
print tree structure of path specified.
options:
-f print files as well as directories
path path to process''' % basename(argv[0])
def main():
if len(argv) == 1:
print usage()
elif len(argv) == 2:
path = argv[1]
if isdir(path):
tree(path, ' ')
else:
print 'ERROR: \'' + path + '\' is not a diretory'
elif len(argv) == 3 and argv[1] == '-f':
path = argv[2]
if isdir(path):
tree(path, ' ', True)
else:
print 'ERROR: \'' + path + ' \' is not a dirctory'
else:
print usage()
if __name= '__main__':
main()
#较长的代码必须要有main()主方法。
上一篇: python module usage
下一篇: Python要self的理由
48102
46789
37711
35037
29576
26237
25166
20203
19841
18315
5988°
6672°
6164°
6153°
7264°
6103°
6212°
6684°
6649°
8040°