在python NameError中定义异常错误



我正在尝试用python编写以下代码

def fixPdf(pdfFile):
try:
fileOpen = file(pdfFile, "a")
fileOpen.write("%%EOF")
fileOpen.close()
return "Fixed"
except:
return "Unable to open file: %s with error: %s" % (pdfFile, str(e))
if __name__ == '__main__':
fixPdf('Sample.pdf')

我得到了错误NameError: name 'e' is not defined。我如何在代码的异常部分定义这个变量?

如果意图为e是例外,您需要将其分配给该名称作为except的一部分:

def fixPdf(pdfFile):
try:
fileOpen = file(pdfFile, "a")
fileOpen.write("%%EOF")
fileOpen.close()
print("Fixed")
except Exception as e:
print(f"Unable to open file: {pdfFile} with error: {e}")

if __name__ == '__main__':
fixPdf('Sample.pdf')

如果您希望消息可见,您还需要print消息,因为调用者不打印函数的返回值。

最新更新