2015-04-12 3 views
-3

Следующая дает синтаксическую ошибку:Learning Python Трудный путь: Пример 5

my eyes = 'Brown' my_hair = 'Brown' 
print "Hes got %s and %s hair" % (my_eyes, my_hair) 

Единственный способ это, кажется, работает, если я ставлю Brown, Brown в последней скобкой.

+2

Отсутствует символ новой строки? –

+0

Плюс у вас не может быть пробела в имени переменной –

+1

И есть «и не хватает глаз» (но это не английский, а не Python) –

ответ

1

Вы ошибочно назначаете, вы должны попытаться распаковать кортеж строк на две переменные. Кроме того, переменные Python не могут содержать пробелы, поэтому вы хотите использовать подчеркивание для глаз.

my_eyes, my_hair = 'Brown', 'Brown' # unpacking tuple here 

Кроме того, я предлагаю использовать метод форматирования, который является более распространенным. Этот стиль устарел.

print "He's got {0} and {1} hair".format(my_eyes, my_hair) 
+1

OP также использует «мои глаза» вместо 'my_eyes' ... –

+2

без комментариев, да! OP кажется совершенно потерянным, поэтому, возможно, явным образом заявляю, что WS в именах переменных запрещен, вместо того, чтобы молча давать правильное решение ... BTW Я не делал downvote :-) –

+0

Спасибо за ваш ответ: Но это тоже не работает: – eapodaca

0

Проблема оказалась в том, что период в конце инструкции печати находился вне скобки. Теперь это работает:% (глаза, волосы). Версия формата также работает сейчас.

+0

Я не вижу периода в вашей публикации. –

0

Вот переменные:

name = "some name" 
Age = 57 
Height = 64 
Weight = 135 
Eyes = "brown" 
Teeth = "white" 
Hair = "brown" 

Чтобы напечатать строку с переменными используйте str.format.

print "Let's talk about {}".format(name) 
print "She's {} inches tall".format(Height) 

... Так что на

Убедитесь, что переменные не содержат пробелов. Они тоже чувствительны к регистру :)

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