Python: try/except OSerror errno 2
Python: try/except OSerror errno 2
我正在编写一个脚本,用户可以在其中选择一个目录并点击确定。
我很容易猜到这一点,但我正在尝试对错误处理方面进行排序,但它不会计划。
基本上,除非调用 OSError Errno 2,否则我想继续执行脚本。
此刻,我有:
导入 IOError
...
...
if ok==1:
try:
folder = selection
myFunction(folder)
except IOError:
print "Select a folder, not a file"
我试过在没有 IOError 的情况下使用 except,但这会导致脚本中其他地方出现问题(完全在不同的函数中)
有人有建议吗?
谢谢
我不知道你所说的 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
使用os.path.isdir(folder)
另一种更明确的方式是:
try:
os.remove(filepath)
except OSError, e:
print e
但是,根据调用异常的频率,此方法可能会影响速度。
我正在编写一个脚本,用户可以在其中选择一个目录并点击确定。
我很容易猜到这一点,但我正在尝试对错误处理方面进行排序,但它不会计划。
基本上,除非调用 OSError Errno 2,否则我想继续执行脚本。
此刻,我有: 导入 IOError ... ...
if ok==1:
try:
folder = selection
myFunction(folder)
except IOError:
print "Select a folder, not a file"
我试过在没有 IOError 的情况下使用 except,但这会导致脚本中其他地方出现问题(完全在不同的函数中)
有人有建议吗?
谢谢
我不知道你所说的 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
使用os.path.isdir(folder)
另一种更明确的方式是:
try:
os.remove(filepath)
except OSError, e:
print e
但是,根据调用异常的频率,此方法可能会影响速度。