如果在打开工作簿后发现错误,如何避免让工作簿保持打开状态?
How to avoid leaving a workbook open if error is found after its opening?
我有一段代码可以通过 xlwings
包打开工作簿并从中读取一些内容。完成后,工作簿将关闭。有时,错误发生在开场白和结束语之间。这使工作簿保持打开状态。当我再次尝试 运行 代码时,文件无法打开,因为它已经是 'open'.
我该如何处理?
另外,遇到这种情况,我什至无法手动打开工作簿。
w1=app.books.open("WorkbookName.xlsx")
# Do stuff that can potentially give errors.
w1.close()
我希望创建一些错误处理,以便在过程中发现异常时关闭工作簿。
使用 try-finally 构造:
w1=app.books.open("WorkbookName.xlsx")
try:
# Do stuff that can potentially give errors.
finally:
w1.close()
A finally
子句总是被执行。如果 try
子句中的代码引发未处理的异常,那么 python 解释器将跳转到 finally
子句并执行它(并仅在之后自行终止)。
我有一段代码可以通过 xlwings
包打开工作簿并从中读取一些内容。完成后,工作簿将关闭。有时,错误发生在开场白和结束语之间。这使工作簿保持打开状态。当我再次尝试 运行 代码时,文件无法打开,因为它已经是 'open'.
我该如何处理?
另外,遇到这种情况,我什至无法手动打开工作簿。
w1=app.books.open("WorkbookName.xlsx")
# Do stuff that can potentially give errors.
w1.close()
我希望创建一些错误处理,以便在过程中发现异常时关闭工作簿。
使用 try-finally 构造:
w1=app.books.open("WorkbookName.xlsx")
try:
# Do stuff that can potentially give errors.
finally:
w1.close()
A finally
子句总是被执行。如果 try
子句中的代码引发未处理的异常,那么 python 解释器将跳转到 finally
子句并执行它(并仅在之后自行终止)。