我是一个学习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.
我知道 ValueError 是什么。例如,如果输入以字符而不是整数形式给出,则会发生 ValueError。
另一方面,我不知道 EOFError 何时引发。
我无法理解“重新引发此异常”的含义
这本书说,“如果控制台输入失败,对输入的调用将引发 EOFError。” 同样,我不知道控制台输入是什么以及控制台输入何时失败。
我尝试了几种引发 EOFError 的方法,但每次尝试都只有 ValueError。有人可以给我一些想法吗?
提前致谢。