Я следил за книгой "Python для чайников", и есть один пример, который не распечатывает результат, как я ожидал.
class Error(Exception):
pass
class NotEnoughStuffError(Error):
pass
try:
thefile = open('people.csv')
line_count = len(thefile.readlines())
if line_count < 2:
raise NotEnoughStuffError
except NotEnoughStuffError:
print('Not Enough Stuff')
except FileNotFoundError:
print('File not found')
thefile.close()
else:
for line in thefile:
print(line)
thefile.close()
print('Success!')
Вопрос 1: Когда он печатает, он должен показать все строки из файла. Тем не менее, это только печатает «Успех!» Почему содержимое файла не было напечатано?
Вопрос 2. Я заменил код:
class Error(Exception):
pass
class NotEnoughStuffError(Error):
pass
на
class NotEnoughStuffError(Exception):
pass
Они возвращают одинаковый результат? Является ли исключение встроенным классом в Python?