首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过困难的方式学习Python练习11

通过困难的方式学习Python练习11
EN

Stack Overflow用户
提问于 2011-08-13 04:22:15
回答 7查看 1.5K关注 0票数 1

我正在努力完成学习Python的练习11,但遇到了一些问题。下面是我使用geedit在.py文件中输入的内容(在PC上工作)

代码语言:javascript
复制
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显示原始输入,并且它们往往在最后一行显示为'‘,我做错了什么?

EN

回答 7

Stack Overflow用户

发布于 2011-08-13 04:35:22

raw_input's argument用作提示符的文本。

你可以这样做:

代码语言:javascript
复制
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)

如果你想提供默认值,你可以这样做:

代码语言:javascript
复制
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)
票数 6
EN

Stack Overflow用户

发布于 2011-08-13 04:27:50

我认为您可能误解了raw_input的行为。raw_input('27')的意思是“打印27,然后等待用户输入”。27不是默认值,它只是一个提示符。如果您没有键入任何内容就按enter,那么age的值将是'',而不是'27'

票数 3
EN

Stack Overflow用户

发布于 2011-08-13 04:33:14

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

代码语言:javascript
复制
  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)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7045888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档