学习Python艰难的练习11

时间:2011-08-12 20:22:15

标签: python

我正试图通过练习11艰难学习Python并遇到一些问题。下面是我使用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显示原始输入,并且它们倾向于在最后一行显示我做错了什么?

7 个答案:

答案 0 :(得分:6)

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)

答案 1 :(得分:3)

我认为你可能会误解raw_input的行为。 raw_input('27')表示“打印27,然后等待用户输入”。 27不是默认值,只是一个提示。如果您点击输入而未键入任何内容,则age的值将为'',而不是'27'

答案 2 :(得分:1)

这就是我认为你想要的样子?

  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)

答案 3 :(得分:0)

在本练习中,您无意在代码中的括号中键入年龄,身高等。相反,如Zed在他的例子中所做的那样,将括号留空:

age = raw_input()

然后,当您在终端中运行程序时,您会在询问时输入您的年龄。与其他变量相同。因此,最后,当提示您回答问题时,程序会打印您在终端中输入的值。

答案 4 :(得分:0)

使用zed shaw的代码示例,他明确地说:"无论如何键入此代码并使其完全相同"。当您使用raw_input()时,您要求用户输入他们的信息,因此您还没有添加信息。执行程序时,输入"确切地说"如他所知,它将提示用户输入一个值,并且任何被估算的值都将打印到控制台。

答案 5 :(得分:0)

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接受输入。而不是直接提供输入,而是作为问答原型 喜欢, ->你几岁? -> 27

->所以你今年27岁!

关于python 2和3的更多信息有所不同 如作者所述,使用Python 2在这种情况下可能会为您提供所需的输出。 希望对您有所帮助:) !!!!

答案 6 :(得分:0)

您正在输入数据,例如当练习要求您将其输入终端时,将“ 27”输入文本编辑器。

就像练习中一样,完全在文本编辑器中输入文本,使括号保持空白,如下所示:

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

当您在终端中运行它时,它会显示“您几岁?” 然后在终端中输入“ 27”并按Enter 然后会问你“你有多高”,输入5'8”,然后按Enter键

您正在与终端进行对话,询问您问题并回答。