Python-遍历目录

遍历d:/sylar文件目录,打印出所有的目录和文件

首先打印d:/sylar当前目录下所有

import os
def func(filepath):
    files=os.listdir(filepath) #查看当前目录中的文件
    for file in files: #获取每一个文件
        print(file)
func("d:/sylar")

test1.txt
test2.txt
目录1
目录2

打印sylar目录下所有目录以及文件

import os
def func(filepath):
    files=os.listdir(filepath) #查看当前目录中的文件
    for file in files: #获取每一个文件名
        #h获取到文件的路径
        file_p=os.path.join(filepath,file)
        if os.path.isdir(file_p): #判断file_p是否目录
            print('文件夹',file)
            func(file_p)
        else:
            print(file) #打印文件名

func("d:/sylar")

test1.txt
test2.txt
文件夹 目录1
目录1下的文件.txt
目录1下的文件1.txt
目录1下的文件2.txt
文件夹 目录2
目录2下的文件.txt
目录2下的文件1.txt
目录2下的文件2.txt

优化一下,增加层次感

import os
def func(filepath,n):#d:/sylar
    #1,打开这个文件夹
    files=os.listdir(filepath) #查看当前目录中的文件
    #2,拿到每一个文件名
    for file in files: #获取每一个文件名
        #3获取到文件的路径
        file_p=os.path.join(filepath,file) #d:/sylar/文件名
        #4 判断是否是文件夹
        if os.path.isdir(file_p): #判断file_p是否目录
            #5.如果是文件夹,继续在来一遍
            print("\t"*n,file,":") #打印文件名,\t层数
            func(file_p,n+1)
        else: #不是文件夹,普通文件
            print("\t"*n,file) #打印文件名

func("d:/sylar",0)
 test1.txt
 test2.txt
 目录1 :
     目录1下的文件.txt
     目录1下的文件1.txt
     目录1下的文件2.txt
 目录2 :
     目录2下的test目录 :
         test2目录2下文件.txt
     目录2下的文件.txt
     目录2下的文件1.txt
     目录2下的文件2.txt

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容