Python/Терминал — Почему я получаю это сообщение об ошибке, когда пытаюсь получить пользовательский ввод

#python #terminal

#питон #терминал

Вопрос:

В VS-коде я ввожу следующий код:

 print("Let me help you add 2 numbers") first_number = int(input("Enter your first number! ")) second_number = int(input("Enter your second number! ")) print("The total is", first_number   second_number)  

Поскольку я использую VS-код, я могу собирать данные пользователя только в терминале. Однако это сообщение об ошибке, которое я получаю:

 gt;gt;gt; print("Let me help you add 2 numbers") Let me help you add 2 numbers gt;gt;gt; first_number = int(input("Enter your first number! ")) Enter your first number! second_number = int(input("Enter your second number! "))  Traceback (most recent call last): File "lt;stdingt;", line 1, in  lt;modulegt; ValueError: invalid literal for int() with base 10:  'second_number = int(input("Enter your second number! "))' gt;gt;gt; print("The total is", first_number   second_number) Traceback (most recent call last): File "lt;stdingt;", line 1, in lt;modulegt; NameError: name 'first_number' is not defined gt;gt;gt;  

Почему я получаю эту ошибку и почему я не могу просто собирать данные пользователя?

Ответ №1:

Ваш пользовательский ввод для второй строки кода внутри терминала на самом деле был третьей строкой кода.

Код просто потерпел неудачу при попытке ввести приведение всей этой строки кода second_number = int(input("Enter your second number! ")) в целое число.

Попробуйте запускать по одной строке за раз внутри терминала вместо копирования, вставляя весь код сразу. Это должно сработать !

Ответ №2:

вот как ты должен был это сделать

введите описание изображения здесь

Это была ваша ошибка при вставке третьей строки, когда она на самом деле запрашивала ввод пользователем первого числа

введите описание изображения здесь

Ответ №3:

Ваша третья строка кода

second_number = int(input("Enter your second number! "))

Фактически берется в качестве входных данных для второй строки

first_number = int(input("Enter your first number! ")) .

В терминале попробуйте выполнять по одной строке кода за раз.