os模块下有两个函数:
os.walk()
os.listdir()
1 # -*- coding: utf-8 -*- 2 3 import os 4 5 def file_name(file_dir): 6 for root, dirs, files in os.walk(file_dir): 7 print(root) #当前目录路径 8 print(dirs) #当前路径下所有子目录 9 print(files) #当前路径下所有非目录子文件
输出格式为:
当前文件目录路径
当前路径下子文件目录(若存在, 不存在则为 [] )
当前路径下非目录子文件(仅为子文件的文件名)
子文件1路径
子文件1下的子文件目录
子文件1下的非目录子文件
子文件2路径
子文件2下的子文件目录
子文件2下的非目录子文件
1 # -*- coding: utf-8 -*- 2 3 import os 4 5 def file_name(file_dir): 6 L=[] 7 for root, dirs, files in os.walk(file_dir): 8 for file in files: 9 if os.path.splitext(file)[1] == '.jpeg': 10 L.append(os.path.join(root, file)) 11 return L 12 13 14 #其中os.path.splitext()函数将路径拆分为文件名+扩展名
1 # -*- coding: utf-8 -*- 2 import os 3 4 def listdir(path, list_name): #传入存储的list 5 for file in os.listdir(path): 6 file_path = os.path.join(path, file) 7 if os.path.isdir(file_path): 8 listdir(file_path, list_name) 9 else: 10 list_name.append(file_path)
递归输出当前路径下所有非目录子文件