os模块下有两个函数:

os.walk()
os.listdir()
1 #-*- coding: utf-8 -*-
2
3 importos
4
5 deffile_name(file_dir):
6 for root, dirs, files inos.walk(file_dir):
7 print(root) #当前目录路径
8 print(dirs) #当前路径下所有子目录
9 print(files) #当前路径下所有非目录子文件

输出格式为:

当前文件目录路径

当前路径下子文件目录(若存在, 不存在则为 [] )

当前路径下非目录子文件(仅为子文件的文件名)

子文件1路径

子文件1下的子文件目录

子文件1下的非目录子文件

子文件2路径

子文件2下的子文件目录

子文件2下的非目录子文件

1 #-*- coding: utf-8 -*-
2
3 importos
4
5 deffile_name(file_dir):
6 L=[]
7 for root, dirs, files inos.walk(file_dir):
8 for file infiles:
9 if os.path.splitext(file)[1] == '.jpeg':
10 L.append(os.path.join(root, file))
11 returnL
12
13
14 #其中os.path.splitext()函数将路径拆分为文件名+扩展名
1 #-*- coding: utf-8 -*-
2 importos
3
4 def listdir(path, list_name): #传入存储的list
5 for file inos.listdir(path):6 file_path =os.path.join(path, file)7 ifos.path.isdir(file_path):8 listdir(file_path, list_name)9 else:10 list_name.append(file_path)

递归输出当前路径下所有非目录子文件