我有一段代码通过xlwings
包打开工作簿并从中读取一些内容。完成后,工作簿将关闭。有时,在开始和结束语句之间会发生错误。这使工作簿保持打开状态。当我尝试再次运行代码时,该文件已经打开,因此无法打开。
我该如何处理?
此外,发生这种情况时,我什至无法手动打开工作簿。
w1=app.books.open("WorkbookName.xlsx")
# Do stuff that can potentially give errors.
w1.close()
我希望创建一些错误处理,以便在途中发现异常时,工作簿将在其后关闭。
答案 0 :(得分:1)
使用try-finally构造:
w1=app.books.open("WorkbookName.xlsx")
try:
# Do stuff that can potentially give errors.
finally:
w1.close()
总是执行finally
子句。如果try
子句中的代码引发了未处理的异常,则python解释器将跳转到finally
子句并执行它(并在此后终止自身)。