当目录不存在时,os.mkdir(path)返回OSError

当目录不存在时,os.mkdir(path)返回OSError,第1张

当目录不存在时,os.mkdir(path)返回OSError

格雷格的答案是正确的,但还远远不够。

OSError
具有次错误条件,并且您不想每次都抑制它们。谨慎捕获 预期的 *** 作系统错误是明智的。

在决定抑制该异常之前,请进行其他检查,如下所示:

import errnoimport ostry:    os.mkdir(dirname)except OSError as exc:    if exc.errno != errno.EEXIST:        raise    pass

您可能不想抑制

errno.EACCES
(权限被拒绝),
errno.ENOSPC
(设备上没有剩余空间),
errno.EROFS

(只读文件系统)等。或者也许您确实想要-但这需要根据特定情况做出有意识的决定。您正在构建的逻辑。

Greg的代码抑制了所有 *** 作系统错误;就像

except Exception
不安全一样,这是不安全的。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5630615.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存