2

我正在编写一个脚本,用户选择一个目录并点击确定。

我很容易怀疑,但我正在尝试对错误处理方面进行排序,但它不会计划。

本质上,我想继续脚本,除非调用 OSError Errno 2。

目前,我有: import IOError ... ...

if ok==1:
  try:
    folder = selection
    myFunction(folder)
  except IOError:
    print "Select a folder, not a file"

我试过使用 except 没有IOError,但这会导致脚本其他地方出现问题(完全在不同的函数中)

有人有建议吗?

谢谢

4

3 回答 3

1

我不知道您所说的 OSError Errno 2 是什么意思,但是您想要处理的任何错误都可以用语句处理if并忽略所有其他错误pass

try:
    folder = selection
    myFunction(folder)
except Exception as e:
    if "I/O operation failed" in e.__doc__:
        print "bingo"
    else:
        pass
于 2015-09-12T07:32:50.393 回答
0

采用os.path.isdir(folder)

Python - isdir

于 2015-09-12T07:33:04.713 回答
0

另一种更明确的方式是:

try:
    os.remove(filepath)
except OSError, e:
    print e

但是,根据调用异常的频率,此方法会影响速度。

于 2016-05-26T22:06:54.433 回答