Posted in Python onApril 29, 2022
我们有时候会读取一个文件夹中的所有的文件。但是,os.listdir()返回的文件名不一定是顺序的,这就要求我们对返回的文件名列表进行排序:
这时我们想到利用Epoch后面的数字对其进行排序,具体代码如下:
def file_name(path):
train_loss_list = []
val_loss_list = []
loss_file_name = []
files = os.listdir(path) # 采用listdir来读取所有文件
for i in files:
loss_file_name.append(i.strip("Epoch"))
loss_file_name.sort(key=lambda x: int(x[:x.find("-")])) # 按照前面的数字字符排序
print(loss_file_name)
这样读取的文件名就是按照顺序排列了,之后我们就可以利用切片顺序的从中读取train和val的loss数据进行绘图。
附:python顺序的读取文件夹下名称有序的文件
import os
path="/home/test/" #待读取的文件夹
path_list=os.listdir(path)
path_list.sort() #对读取的路径进行排序
for filename in path_list:
print(os.path.join(path,filename))
总结
到此这篇关于用Python按顺序读取文件夹中文件的文章就介绍到这了!
Python按顺序遍历并读取文件夹中文件
- Author -
霄逸鸿- Original Sources -
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Tags in this post...
Reply on: @reply_date@
@reply_contents@