все Python 3Исключенияисключение
EOFError
встроенные исключения
input() достиг конца ввода (EOF), не получив данных.
Синтаксис
raise EOFError
На Stepik это штатный сигнал «строки кончились», когда ввод подаётся файлом или пайпом, а не с клавиатуры: цикл вроде while True: s = input() рано или поздно упирается в конец потока. Важно, что EOFError поднимает именно input(); низкоуровневое чтение ведёт себя иначе — sys.stdin.readline() и file.read() на конце просто возвращают пустую строку, без исключения. Поэтому либо ловите EOFError и выходите из цикла, либо читайте через for line in sys.stdin, где конец обрабатывается сам.
Примеры
try:
raise EOFError
except EOFError as e:
print(type(e).__name__) # → EOFError
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности