2016-09-12 1 views
1
print ("how old are you??"), 
age = input() 
print("How tall are you"), 
height = input() 
print("How much do you weigh"), 
weight = input() 

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

TypeError: неподдерживаемый тип операнда (ов) для%: 'NoneType' и «улЯ изучаю python 3.5 и пытаюсь получить строку, чтобы перепечатать пользовательскую переменную ввода?

+0

Пропущенная запятая между высотой и весом и удалением запятой после печати. –

ответ

2

Не помещайте переменные в кавычки. Вместо

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

поставил

print("So, you're '%r' old, '%r' tall and weigh '%r' " % (age, height weight)) 
+0

Это правда, но ошибка на самом деле вызвана другой проблемой в коде. В основном '%' применяется к возвращаемому значению 'print', который является' None' и кортежем. –

0

Как немного собрата нуб. Простой способ достижения этой цели задает свой вопрос при назначении переменной

age = input("how old are you??") 
height = input("How tall are you") 
weight = input("How much do you weigh") 

print("So, you're", age, "years old", height, "tall and weigh", weight) 
0
print ("how old are you??"), 
age = input() 
print("How tall are you"), 
height = input() 
print("How much do you weigh"), 
weight = input() 

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

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

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

  • Нет связанных вопросов^_^