2014-10-31 2 views
0

извините за задание такого основного вопроса, но я всегда поймаю вещи, которые я не понимаю, и я знаю, что я просто схожу с ума, задаюсь вопросом, почему и буду бояться, что я забуду спросить этот вопрос, если я его сохраню Для последующего.Зачем использовать запятую после печати?

В любом случае, я учусь программировать (на Python), используя Learn Python Hard Way. Я в настоящее время в главе 11, и у него есть кусок кода, который он инструктирует копировать:

print "How old are you?", 
age = raw_input() 
print "How tall are you?", 
height = raw_input() 
print "How much do you weigh?", 
weight = raw_input() 

print "So, you're %r old, %r tall, and %r heavy." % (
age, height, weight) 

До сих пор я только был попугай, что говорит книга в мой текстовый процессор, но функции это ускользает от меня. Почему после строк печати появляются запятые? Это потому, что он говорит интерпретатору не заканчиваться при печати инструкции, но ждать raw_input()?

Спасибо за ваше время!

+0

Вы также можете передать строка для 'raw_input', сохраняющая вам печать, т.е.' raw_input («сколько вам лет?») ', и вы получите тот же эффект. – TankorSmash

ответ

1

Ввод запятой после вызова print опускает новую строку.

>>> print 'a', 'b', 'c' 
'abc' 
>>> print 'a', 
>>> print 'b', 
>>> print 'c' 
'abc' 
>>> print 'a' 
>>> print 'b' 
>>> print 'c' 
'a' 
'b' 
'c' 

Конечно, интерпретатор будет печатать сразу после завершения ввода каждой строки, но это более ясно, что этот путь.

В вашем случае, если вы не поставить запятую после печати, raw_input будет отображаться в строке после вопроса:

print "How old are you?" 
raw_input() 

How old are you? 
12 

против

print "How old are you?", 
raw_input() 

How old are you? 12 
Смежные вопросы