2016-05-30 5 views
0

Я пытаюсь ввести несколько записей, но когда я запускаю эти инструкции, это не так, как ожидалось. Предположим, я хочу прочитать имя и возраст человека.несколько входов в python

num1=raw_input("ENter a number :"); 
nam1=raw_input("What is your name:"); 
print num1; 
ENter a number :nam1=raw_input("What is your name:") 
print nam1; 

Traceback (most recent call last): 
File "input", line 1, in module 

NameError: name 'nam1' is not defined 

Итак, если я выполнить эти два утверждения в консоли, она считывает второе утверждение в качестве входных данных для первых запросов, т.е. принимает NAM = raw_input («Что ваше имя:») в качестве nam1.

Есть ли способ ввода одного ввода одновременно при одновременном выполнении нескольких операторов?

Спасибо!

+1

Как этот вопрос связан с JavaScript и R? – nnnnnn

ответ

1

Нельзя использовать; для завершения строк с использованием python.

num1=raw_input("ENter a number :"); #<= remove the ; here 
nam1=raw_input("What is your name:"); #<= remove the ; here 

чистая версия:

num1 = raw_input("ENter a number :") 
nam1 = raw_input("What is your name:") 
0

Если я вас, вы должны быть скопировать несколько строк в оболочке, которая не то, что вы должны делать.

Если вы хотите, чтобы скопировать код в оболочку, вам нужно, чтобы сделать его одну строку:
num1=raw_input("ENter a number :");nam1=raw_input("What is your name:");print num1;print nam1

Обратите внимание, что это одна линия. Как вы можете видеть, я использую точки с запятой, чтобы указать, где заканчивается каждый оператор.
Если вы хотите запустить его в нескольких строках, вам нужно поместить свой код в файл .py и запустить его с помощью python.
Запуск файла будет работать с OT без запятой, но так как вы делаете несколько строк, то не было бы никакой необходимости в точку с запятой, поэтому отказаться от них:

num1 = raw_input("ENter a number :") 
nam1 = raw_input("What is your name:") 
print num1 
print nam1 
+0

Спасибо @hlfrmn! – user6397960

Смежные вопросы