python获取目录结构

利用python获取目录结构

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# @Time       : 2020/12/20 13:51
# @Author     : ENDZHT
# @ProjectName: pythonExercise
# @FileName   : 获取目录文件.py
# @Software   : PyCharm
import os
import os.path


def dirfileshow(dir=os.getcwd(), depth=0):
    """
    打印目录结构

    1. 获取当前目录物理路径
    2. 获取当前目录文件目录到列表,os.listdir()
    3. 输出当前目录
    4. 遍历列表,判断目标是文件还是目录
    5. 如果是文件则直接输出,否则到1
    :return:
    """
    rootdir = dir.split('\\')[-1]
    realdir = dir  # 获取物理路径
    if depth == 0:
        print("| " + realdir)
    print("| " + "  " * depth + "+-- " + rootdir)
    # TODO:获取当前目录结构
    dirs = os.listdir(realdir)
    # TODO:判断文件目录
    for item in dirs:
        if os.path.isfile(f"{realdir}\\{item}"):
            print("| " + "  " * (depth + 1) + "--- " + item)
        elif os.path.isdir(f"{realdir}\\{item}"):
            dirfileshow(f"{realdir}\\{item}", depth + 1)


def main():
    # Todo: Add your code here
    pass


if __name__ == '__main__':
    # main()
    dirfileshow()