Bol*_*ain 5 python exception os.path
在打开该目录中的文件之前,我试图在目录不存在时引发错误。根据这个回复,我应该为我的问题使用最具体的 Exception 构造函数,我认为是NotADirectoryError. 但是运行下面的代码我得到NameError: global name 'NotADirectoryError' is not defined. 在此先感谢您的帮助!
import os
if not os.path.isdir(baselineDir):
raise NotADirectoryError("No results directory for baseline.")
Run Code Online (Sandbox Code Playgroud)
如果有更好的方法来做到这一点,请提出建议,谢谢。
您可能使用的是 Python 2,它没有定义NotADirectoryError. 然而,这是在 Python 3 中定义的,正是出于您尝试使用它的目的。
如果您需要使用 Python 2,则需要通过类自行定义错误。阅读有关用户定义异常的文档,了解如何对Exception类进行子类化并根据您自己的需要进行自定义(如有必要)。这是一个非常简单的例子:
class NotADirectoryError(Exception):
pass
Run Code Online (Sandbox Code Playgroud)
这将获取传递给它的字符串并将其打印出来,就像您想要的那样。
| 归档时间: |
|
| 查看次数: |
10951 次 |
| 最近记录: |