遍历目录获取所有文件和子目录
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import glob
def get_file_path(root_path,file_list,dir_list):
#获取该目录下所有的文件名称和目录名称
dir_or_files = os.listdir(root_path)
for dir_file in dir_or_files:
#获取目录或者文件的路径
dir_file_path = os.path.join(root_path,dir_file)
#判断该路径为文件还是路径
if os.path.isdir(dir_file_path):
dir_list.append(dir_file_path)
#递归获取所有文件和目录的路径
get_file_path(dir_file_path,file_list,dir_list)
else:
file_list.append(dir_file_path)
# 获取指定目录指定文件
def get_file(path='./', condition='*'):
'''
:param path: 查找路径, 默认查找当前目录
:param condition: 查找条件,”*”匹配0个或多个字符;”?”匹配单个字符;”[]”匹配指定范围内的字符,如:[0-9]匹配数字
:return: 返回找到的结果
'''
files = []
for file in glob.glob(path + "/" +condition):
files.append(file)
return files
if __name__ == "__main__":
#根目录路径
root_path = r"./test"
files = []
dirs= []
get_file_path(root_path, files, dirs)
print(files)
print(dirs)
get_file() #获取当前目录所有文件
get_file(root_path, '*.png') #获取目录下的所有png文件
get_file(root_path, '*[0-9].png') #获取目录下的带数字的png文件



