Возможные дубликаты:
когда необходимо добавить предложениеelse
в try..except в Python?
Python try-else
for arg in sys.argv[1:]:
try:
f = open(arg, 'r')
except IOError:
print 'cannot open', arg
else:
print arg, 'has', len(f.readlines()), 'lines'
f.close()
Что такое использование этого предложения else, и когда оно будет выполнено?
Выражение try... except... else означает что-то вроде этого:
try:
# execute some code
except:
# if code raises an error, execute this code
else:
# if the "try" code did not raise an error, execute this code
Необязательное предложение else выполняется, если и когда управление течет с конца предложения try.7.2 Исключения в предложении else не обрабатываются предыдущими исключениями.
В настоящее время контроль "истекает конец", за исключением случая исключения или выполнения инструкции return, continue или break.
Поэтому предложение else
выполняется, когда try
не создает исключение и не выходит из блока через оператор потока управления.