我是一个学习Python的新手。请看一下下面的代码(摘自 Goodrich 等人的《Python 中的数据结构和算法》)。
age = -1 # an initially invalid choice
while age <= 0:
try:
age = int(input('Enter your age in years: '))
if age <= 0:
print('Your age must be positive.')
except ValueError:
print('That is an invalid age specification.')
except EOFError:
print('There was an unexpected error reading input.')
raise # let's re-raise this exception.
Run Code Online (Sandbox Code Playgroud)
我知道 ValueError 是什么。例如,如果输入以字符而不是整数形式给出,则会发生 ValueError。
另一方面,我不知道 EOFError 何时引发。
我不明白“重新引发此异常”是什么意思
书上说,“如果控制台输入失败,对输入的调用将引发 EOFError。” 同样,我不知道控制台输入是什么以及控制台输入何时失败。
我尝试了几种引发 EOFError 的方法,但每次尝试都只有 ValueError 。有人可以给我一些想法吗?
提前致谢。