2016-07-21 3 views
-2

я хочу принять ввод от пользователя в систему и каждое значение входа на последовательных line.this должен быть реализован в питонаКак получить ввод из нескольких строк?

while x=int(raw_input()): ##<=showing error at this line 
    print(x) 
    gollum(x) 
#the function gollum() has to be called if the input is present 
+1

Возможный дубликат [попросив пользователя для ввода до тех пор, пока они не дадут действительный ответ] (http://stackoverflow.com/questions/23294658/asking-the-user-for-input-until-they-give-a-valid-response) –

+0

Можете поделиться своим драгоценная «ошибка на этой линии» с помощью ussss? – deceze

+1

проверяет равенство либо с 'if', либо' elif', либо 'while' использует двойные знаки равенства' == ' –

ответ

0

Причина, почему ваш код не работает почему хочет условие или объект. Поскольку вы назначаете значение (x=raw_input()), в то время как не обнаружите ничего для тестирования (присваивание НЕ возвращает какое-либо значение).
Вы можете запросить ввод, а затем сделать то время цикла в зависимости от значения этого входа (которые будут изменены внутри цикла While):

x = int(raw_input()) 
while x: 
    print(x) 
    gollum(x) 
    x = int(raw_input()) 
0

Это дает ошибку, потому что х = INT (raw_input()) не возвращает логическое значение, и вам нужно логическое значение внутри условия while. Вы можете попробовать это одно:

while True: 
     x = raw_input() 
     if x=='': 
      break 
     x = int(x) 
     print(x) 
     gollum(x) 

таким образом, если вы поместите пустую строку (просто войти) программа просто останавливается и не дает досадную ошибку: P

+0

большое спасибо –

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