os 模块下有两个函数:
-
os.walk()
-
os.listdir()
import os
def file_name(file_dir):
for root, dirs, files in os.walk(file_dir):
print(root) #当前目录路径(包含所有子目录)
# print("===============")
# print(dirs) #当前路径下所有子目录(同一路径下的存一个列表中)
# print("===============")
# print(files) #当前路径下所有非目录子文件(同一路径下的存一个列表中)
file_name("E:\\qzcsbj")
获取路径下指定格式的文件
方式一:
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
import os
def file_name(file_dir):
fileList = []
for root, dirs, files in os.walk(file_dir):
for file in files:
# print(file)
if os.path.splitext(file)[1] == '.txt': # os.path.splitext()函数将路径拆分为文件名+扩展名
# if file.split('.')[1].strip() == 'txt':
fileList.append(os.path.join(root, file))
return fileList
res = file_name("E:\\qzcsbj")
print(res)
方式二:
import os
def list_dir(path, list_name): # 传入存储的list
for file in os.listdir(path): # os.listdir(path),路径下的文件及文件夹,不包含子文件和子文件夹
file_path = os.path.join(path, file)
if os.path.isdir(file_path): # 判断是否目录
list_dir(file_path, list_name)
else:
list_name.append(file_path)
fileList=[]
list_dir("E:\\qzcsbj", fileList)
print(fileList)