我正在努力完成学习Python的练习11,但遇到了一些问题。下面是我使用geedit在.py文件中输入的内容(在PC上工作)
print "How old are you?",
age = raw_input('27')
print "How tall are you?",
height = raw_input('5\'8"')
print "How much do you weigh?",
weight = raw_input('180lbs')
print "So, you're %r old, %r tall and %r heavy." %(age, height, weight) 我无法让%r显示原始输入,并且它们往往在最后一行显示为'‘,我做错了什么?
发布于 2011-08-13 04:35:22
raw_input's argument用作提示符的文本。
你可以这样做:
age = raw_input("How old are you? ")
height = raw_input("How tall are you? ")
weight = raw_input("How much do you weigh? ")
print "So, you're %r old, %r tall and %r heavy." % (age, height, weight)如果你想提供默认值,你可以这样做:
age = raw_input("How old are you? ")
height = raw_input("How tall are you? ")
weight = raw_input("How much do you weigh? ")
age = age if age is not '' else '27'
height = height if height is not '' else '5\'8"'
weight = weight if weight is not '' else '180lbs'
print "So, you're %r old, %r tall and %r heavy." % (age, height, weight)发布于 2011-08-13 04:27:50
我认为您可能误解了raw_input的行为。raw_input('27')的意思是“打印27,然后等待用户输入”。27不是默认值,它只是一个提示符。如果您没有键入任何内容就按enter,那么age的值将是'',而不是'27'。
发布于 2011-08-13 04:33:14
我想这就是你想要的样子?
1 print "How old are you?",
2
3 age = raw_input()
4
5 print "How tall are you?",
6
7 height = raw_input()
8
9 print "How much do you weigh?",
10
11 weight = raw_input()
12
13 print "So, you're %d old, %s tall and %d heavy." %(age, height, weight)https://stackoverflow.com/questions/7045888
复制相似问题