码迷,mamicode.com
首页 > 其他好文 > 详细

List contents of directories in a tree-like format

时间:2014-07-22 22:49:13      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   os   io   2014   

  Python programming practice.

  Usage: List contents of directories in a tree-like format.

#!/usr/bin/python
#Author: lxw0109
#Date: 20140719
#Usage: List contents of directories in a tree-like format.

import os
import sys


def tree(directory, count):
    if os.path.isdir(directory):
        print((count + 1) * "|   " + "|---" + os.path.basename(directory))
        # Get the file/directory list in ‘dir‘
        dirFormat = os.listdir(directory)
        dirFormat.sort()

        for dirItem in dirFormat:

            #absPath = os.path.abspath(dirItem)    
            #NO: On most platforms, this is equivalent to calling the function normpath() as follows:
            #normpath(join(os.getcwd(), path))

            absPath = directory + os.sep + dirItem
            tree(absPath, count + 1)
    else:
        print((count + 1) * "|   "+ "|---" + os.path.basename(directory))


def main():
    #print(sys.argv)    #NOTE: sys.argv is a list.
    if len(sys.argv) != 2:
        print("Usage: tree DirectoryName")
        sys.exit(0)

    #directory = "/home/lxw/Documents/Programing"
    directory = sys.argv[1]

    #Get rid of the ‘/‘ at the end.
    if directory.endswith(os.sep):
        directory = directory[:-1]

    #turn Relative Path / Absolute Path into Absolute Path.
    if directory[0] != /:
        #print("RELATIVE: " + directory[0])
        directory = os.getcwd() + os.sep + directory
        #print("direcotry: " + directory)

    #count = directory.count(os.sep)
    tree(directory, -1)

if __name__ == "__main__":
    main()

List contents of directories in a tree-like format,布布扣,bubuko.com

List contents of directories in a tree-like format

标签:style   blog   color   os   io   2014   

原文地址:http://www.cnblogs.com/lxw0109/p/tree-like-format.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!