在保存文件时经常忘记创建保存目录,可以通过以下方法自动生成目录:
def make_dirs(path: str):
pos = path.rfind(os.sep) # 从右向左找到第一个分隔符
if pos < 0:
raise Exception('Can not find the directory from the path', path)
path = path[0: pos] # 根目录
os.makedirs(path, exist_ok=True) # 考虑已存在目录的情况
具体使用方法如下:
self.img_path = 'E:{sep}PycharmWork{sep}imgs{sep}{name}{sep}test.jpg'.format(sep=os.sep, name=self.get_name())
# 调用make_dirs函数
myf.make_dirs(path)