首先,这是我的代码::
def tryfirst():
try:
f = open('testfile.txt')
except FirstNotFound as e:
trysecond()
else:
print(f.read())
f.close()
def trysecond():
try:
f = open('test_file.txt')
except StillNotFound as e:
print(e)
else:
print(f.read())
f.close()
tryfirst()
我要完成什么?
我希望我的程序尝试打开一个不存在的文本文件(testfile.txt(,在尝试该文本文件后,如果失败,它将移动到下一个确实存在的文本文件(test_file.txt(并打印文件的内容。我希望它通过调用第一个函数 tryfirst 来启动程序,就像在代码底部所做的那样。
当我尝试运行它时,我得到以下内容,但不确定为什么::
NameError: global name 'FirstNotFound' is not defined
您只是无法命名您的异常。来自python的异常文档是重要的信息来源。在您的情况下,将FirstNotFound
和StillNotFound
替换为IOError
您没有名为FirstNotFound
您正在寻找的是IOError
这对
我有用:-
def readFile():
try:
f = open('testfile1.txt')
print(f.read())
f.close()
except OSEroor as e:
f = open('testfile2.text')
print(f.read())
f.close()