在整个软件开发项目中,可能涉及到对文件目录的读取,写入操作,初始化工作不可或缺的就是对文件进行规范化操作,下面提供一段文件初始化的代码。
import os
import shutil
filename = 'test'
output_path_abs = os.path.join(os.getcwd(), filename)
if os.path.exists(output_path_abs) is False:
# 当路径不存在时候,创建路径
os.makedirs(output_path_abs)
else:
# 当路径存在时候,进行清空操作
for i in os.listdir(output_path_abs):
if os.path.isdir(os.path.join(output_path_abs, i)):
shutil.rmtree(os.path.join(output_path_abs, i))
else:
os.remove(os.path.join(output_path_abs, i))
代码的功能注释也有写了,就是文件夹不在的时候就创建,在的时候就清空,从而保证这个文件路径存在并且无其他内容。
在清空部分用到两种方法:rmtree和remove,一种用于删除文件夹,另一种就是删除文件,两者都不能混着用。
当然,在这段代码中也有比较暴力的做法,就是文件夹如果存在就删除后再重建
import os
import shutil
filename = 'test'
output_path_abs = os.path.join(os.getcwd(), filename)
if os.path.exists(output_path_abs) is False:
# 当路径不存在时候,创建路径
os.makedirs(output_path_abs)
else:
shutil.rmtree(output_path_abs)
os.makedirs(output_path_abs)
可以省几行代码,但我们就了解不到那两种删除的方法和差异了,看你个人的喜好吧。