PHP前端开发

如何列出一个目录的所有文件

百变鹏仔 1个月前 (01-23) #Python
文章标签 文件

首先,这类需求用到文件及文件路径的操作,需要用到的库是os库、glob库。

实现需求的方式有许多:

NO.1 使用os.listdir

#!usr/bin/env python#-*-coding:utf-8 -*- import os def main():    '''    输出该路径下所有的文件夹及文件名字    '''    dir_aim = raw_input("请输入目标路径:")    for filename in os.listdir(dir_aim):        print filenameif __name__=='__main__':    main()

NO.2 使用glob 模块

#!usr/bin/env python#-*-coding:utf-8 -*- import glob def main():    '''    输出该路径下所有的文件夹及文件的路径    '''    dir_aim = raw_input("请输入目标路径:")    for filename in glob.glob(dir_aim):        print filenameif __name__=='__main__':    main()

可以通过添加限定来进行文件类型筛选

例如筛选exe文件:

*.exe

NO.3 使用os.walk递归遍历

#!usr/bin/env python#-*- utf-8 -*- import os def main():    '''    读取制定路径下的所有文件    '''    dir_aim = raw_input("请输入所要查看的文件目录:")    for root, dirs, files in os.walk(dir_aim):        print 'root:', root        if files:            print 'File:'            for file in files:                print file,            print ''        if dirs:            for dir in dirs:                print dir if __name__=='__main__':    main()

当文件路径下存在中文时,print会出现乱码