使用os.walk()方法,实现获取当前目录路径、子目录、以及目录下所有文件
os.walk() 方法是一个简单易用的文件、目录遍历器,可以帮助我们高效的处理文件、目录方面的事情。
import os
def file_name(file_dir):
for root, dirs, files in os.walk(file_dir):
print(root) #当前目录路径
print(dirs) #当前路径下所有子目录
print(files) #当前路径下所有非目录子文件
path=os.getcwd()
file_name(path)
使用上面的函数,可以遍历文件夹内所有的含子目录的文件,再配合使用文件类型函数,即可处理需要的文件类型。
下面这个函数是获取指定目录及子目录下所有指定文件类型的文件绝对路径。
import os
def file_name(file_dir):
file_path=[]
for root, dirs, files in os.walk(file_dir): # 遍历文件目录及所有子目录
for file in files: #对获取的所有文件名进行循环判断
file_type=os.path.splitext(file)[1] # 获取每个文件的后缀名
file_type=file_type.lower() #将大写后缀名转化为小写
if file_type in ('.jpg','.jpeg','.png'): # 判断文件后缀是否是所需的文件
file_path.append(os.path.join(root, file)) # 将符合条件的文件名拼接路径后,存入列表
return file_path # 返回所有文件路径组成的列表
path = os.getcwd()
print(file_name(path))