python 精练(1)
#/usr/bin/python envfrom 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 directoriespath 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()主方法。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。