现象
如果判断不存在目录,则创建目录时遇到的问题:
若不存在一级目录,而直接创建二级及以上目录,则提示FileNotFoundError: [WinError 3] 系统找不到指定的路径。
直接创建二级目录log/demo1
import ospath1 = "log/demo1"if os.path.exists(path1) == False:os.mkdir(path1)
若仅创建一级目录,是没问题的。
import ospath1 = "log"if os.path.exists(path1) == False:os.mkdir(path1)
解决方法
目前想到的原因是python判断目录存在可能是一层一层判断,判断一级目录存在的前提下再判断二级及以上目录,若一级目录不存在则后面的目录再判断会直接出错。
改为先判断一级目录,再判断二级目录,保证一级目录创建的前提下再创建二级目录:
import ospath1 = "log"if os.path.exists(path1) == False:os.mkdir(path1)path2 = path1 + "/demo1"if os.path.exists(path2) == False:os.mkdir(path2)
结论
python调用os.path.exists(path)方法只有在前一级目录存在的情况下,才能进行后面目录的判断,否则会异常,因此需要一层一层目录创建。
如果觉得《FileNotFoundError: [WinError 3] 系统找不到指定的路径。的解决方法》对你有帮助,请点赞、收藏,并留下你的观点哦!