1. 重点内容open一个文件
查了资料,关于open()的mode参数:
file = open(filename, mode)
file.close()
‘r’:读
‘w’:写
‘a’:追加
‘r+’ == r+w(可读可写,文件若不存在就报错(IOError))
‘w+’ == w+r(可读可写,文件若不存在就创建)
‘a+’ ==a+r(可追加可写,文件若不存在就创建)
对应的,如果是二进制文件,就都加一个b就好啦:
‘rb’ ‘wb’ ‘ab’ ‘rb+’ ‘wb+’ ‘ab+’
2. 读取整个文件:
selected_samples是一个存放了字典的列表。
image_info = {
‘probability’: probability[i],
‘path’: path[i],
‘target’: target[i],
‘index’: i + batch_idx * args.train_batch_size # 记录image在train_unlabel_temp.txt文件中的索引,[0,…,n-1]
}
selected_samples.append(image_info)
(1)将selected_samples中的数据一行一行的‘追加’到文件中。
with open(’./data/train_label_temp.txt’, ‘a’) as f:
for i in range(len(selected_samples)):
selected = selected_samples[i]
# print(‘target=’, int(selected[‘target’]))
image_label = selected[‘path’]+’ '+str(selected[‘target’])
f.write(image_label + ‘\n’)
(2)将selected_samples中,出现在文件中的行删除掉。
with open(’./data/train_unlabel_temp.txt’, ‘r’) as f:
lines = f.readlines()
with open(’./data/train_unlabel_temp.txt’, ‘w’) as f:
for i in range(len(selected_samples)):
selected = selected_samples[i]
lines[selected[‘index’]] = ‘’
f.writelines(lines)
3. python 删除非空文件夹
import os
import shutil
os.remove(path) #删除文件
os.removedirs(path) #删除空文件夹
shutil.rmtree(path) #递归删除文件夹
4. Python判断文件是否存在的三种方法
4.1 使用os模块
(1) 判断文件是否存在
import os
os.path.exists(test_file.txt)
True or false
(2) 判断文件夹是否存在
import os
os.path.exists(test_dir)
True or false
待续…