Из того, что вы пишете, я подозреваю Функция Python input()
подняла EOFError
, а я подозреваю она имеет какое-то отношение к VSC, в котором Python работает с -u
опция, которая говорит Python не буферизировать данные, поступающие со стандартного ввода.(Кстати, было бы полезно узнать, что вы ввели в приглашение Python до того, как произошла ваша ошибка.)
В любом случае, если бы я был на вашем месте, следующие два вопроса, которые я хотел бы задать, были бы следующие:
Во-первых, что происходит, когда вы обходите VSC и запускаете свой скрипт Python непосредственно из Python в командной строке Windows cmd
?Это тоже дает вам nexpected EOF
cd Users\shaon\Desktop\VSC
python -V rem Check the version number while we're here.
python -u last.py
Какая разница, если таковая имеется, когда вы запускаете python
без опции -u
?
Секунда,что происходит, когда вы заменяете свой код простым циклом эха и запускаете , что из VSC?Вот что я имею в виду под «простым циклом эха»:
while True:
msg = input() # Type your numbers here, or ctrl-c to exit the loop.
print(msg)
Если мое подозрение верное, вы обнаружите, что ваш код работает при запуске его непосредственно из Python, терпит неудачу (с ошибкой EOFEr), когда вы запускаете его с опцией -u
, и что вы получите ошибку EOFError, когда вы запускаете цикл эха из VSC.В этом случае вы можете попытаться убедить VSC запустить Python без опции -u
.Но посмотрим, что получится.