в то время как цикл до пустой строки в онлайн-интерпретаторе

Почему моя программа работает в PyCharm, но в онлайн-интерпретаторе выдает эту ошибку:

Traceback (последний последний вызов): файл "Solution.py", строка 4, in s = input() EOFError: EOF при чтении строки

Вот часть кода, которая имеет значение:

i = 0
while True:
    s = input()
    if s == '':
        break
    else:
        ...

Я пытаюсь вводить строки до тех пор, пока не появится пустая строка, но она всегда застревает в строке с пустой строкой. Заранее спасибо и извините, если я небрежно с моим вопросом (мой 1-й вопрос).


person Sang    schedule 13.11.2019    source источник
comment
Если есть проблема с онлайн-интерпретатором, выполняющим этот код, пожалуйста, дайте ссылку на него. Мое первое предположение было бы в том, что он не поддерживает input(), но это невозможно сказать без дополнительной информации.   -  person Seb    schedule 13.11.2019
comment
Нам нужна ваша публикация, чтобы воспроизвести проблему. Если я добавлю простую команду pass для отсутствующего предложения else, код будет работать, как и ожидалось. Ваше сообщение об ошибке предполагает, что исходный файл резко заканчивается на строке 4.   -  person Prune    schedule 13.11.2019


Ответы (1)


Возможно, вы можете обработать исключение с помощью try и except:

while True:
    try:
        s = input()
        ...
    except EOFError:
        break
...
person Community    schedule 13.11.2019