FileNotFoundError: [WinError 3] 系统找不到指定的路径。的解决方法

现象

如果判断不存在目录,则创建目录时遇到的问题:

  • 若不存在一级目录,而直接创建二级及以上目录,则提示FileNotFoundError: [WinError 3] 系统找不到指定的路径。
    在这里插入图片描述

直接创建二级目录log/demo1

import os
path1 = "log/demo1"
if os.path.exists(path1) == False:
    os.mkdir(path1)

在这里插入图片描述

  • 若仅创建一级目录,是没问题的。
import os
path1 = "log"
if os.path.exists(path1) == False:
    os.mkdir(path1)

在这里插入图片描述

解决方法

目前想到的原因是python判断目录存在可能是一层一层判断,判断一级目录存在的前提下再判断二级及以上目录,若一级目录不存在则后面的目录再判断会直接出错。

  • 改为先判断一级目录,再判断二级目录,保证一级目录创建的前提下再创建二级目录:
import os
path1 = "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)方法只有在前一级目录存在的情况下,才能进行后面目录的判断,否则会异常,因此需要一层一层目录创建。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yyz0300

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值