在做项目中我们会有这个需求的,比如你训练数据过程也许会保存很多的模型,这个时候你要读取这些模型,去对测试数据进行预测,那
么你就要获取目录下的这些模型的文件名,从而读取这些模型。
方法有很多,但我还是只说一种——os.walk的方法
在这里,我再加一个特殊的需求,比如你目录下有三种模型,那么你要把这三种模型的所有文件名加入到不同的列表中,怎么办?——简
而言之,就是取出目录下的特定文件
我的model目录下有三种不同的模型,我要取出它们,分别放到不同的列表中,注意看我的注释
import os # 保存不同模型的目录名(绝对路径) file_dir = r'C:\Users\zhangyh4\Desktop\xietong1012\model' bayes_list = [] # 贝叶斯模型列表 svm_list = [] # svm模型列表 xgboost_list = [] # xgboost模型列表 # root是指当前目录路径(文件夹的绝对路径) # dirs是指路径下所有的子目录(文件夹里的文件夹) # files是指路径下所有的文件(文件夹里所有的文件) for root,dirs,files in os.walk(file_dir): for file in files: if os.path.splitext(file)[0] == 'bayes': bayes_list.append(os.path.join(root,file)) elif os.path.splitext(file)[0] == 'svm': svm_list.append(os.path.join(root,file)) elif os.path.splitext(file)[0] == 'xgboost': xgboost_list.append(os.path.join(root,file))
推荐学习《python教程》