练习12.提示别人
当你输入raw_input()
的时候,你需要键入 (
和 )
也就是“括号(parenthesis)”。这和你格式化输出两个以上变量时的情况有点类似,比如说 "%s %s" % (x, y) 里边就有括号。对于 raw_input 而言,你还可以让它显示出一个提示,从而告诉别人应该输入什么东西。你可以在 () 之间放入一个你想要作为提示的字符串,如下所示:
y = raw_input("Name? ")
这句话会用 “Name?” 提示用户,然后将用户输入的结果赋值给变量 y。这就是我们提问用户并且得到答案的方式。
也就是说,我们的上一个练习可以使用 raw_input
重写一次。所有的提示都可以通过raw_input
实现。
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)
你看到的结果
$ python ex12.py
How old are you? 38
How tall are you? 6'2"
How much do you weigh? 180lbs
So, you're '38' old, '6\'2"' tall and '180lbs' heavy.
附加题
- 在命令行界面下运行你的程序,然后在命令行输入
pydoc raw_input
看它说了些什么。如果你用的是 Window,那就试一下python -m pydoc raw_input
。- 输入
q
退出pydoc
。- 上网找一下
pydoc
命令是用来做什么的。- 使用
pydoc
再看一下open
,file
,os
, 和sys
的含义。看不懂没关系,只要通读一下,记下你觉得有意思的点就行了。
常见问题
Q:我运行pydoc
的时候,为什么会遇到这个报错invalid syntax
?
你没有在命令行里执行
pydoc
; 你是不是在启动python
后执行的?退出Python试试吧.
Q:我执行pydoc
的时候,我遇到一个提示pydoc 不是内部或外部命令
。
有一些windows上的Python版本没有提供这个命令,你可以跳过这个附加练习,当你需要阅读Python 文档的时候,你在网上搜索就可以了。
Q:为什么用%r
而不是%s
?
请务必记住
%r
会原样输出你输入的每一个字符,而%s
是用来显示你的输入的。下次,我不会再回答相同的问题。这是大家重复问到次数最多的问题,但是一遍一遍问相同的问题,说明你没有记住我讲过的内容。
Q:为什么不能这样输入"How old are you?" , raw_input()
?
你觉得它会生效的, 但是Python认为这种写法是不合法的. 我能告诉你的也只能是你不能这样么写。