这个习题只要是raw_input与参数变量的结合使用!
前面的西体重raw_input()内可以写一些“XXX”提问的内容。那么raw_input()括号内可以填写替他的内容吗?
先上代码:
from sys import argv
script, user_name = argv
prompt = '>'
print "Hi %s, I'm the %s script."%(user_name,script)
print"I'd like ask you a few questions."
print "Do you like me, %s?" % user_name
likes = raw_input(prompt)
print"Where do you live, %s?" %user_name
lives = raw_input(prompt)
print"What kind of computer do you have?"
computer = raw_input(prompt)
print"""
Alright,so you said %r about liking me.
you live in %r .Not sure where that is.
And you have a %r computer .Nice.
"""%(likes,lives,computer)
运行结果如下:
Hi simengred, I'm the ex14.py script.
I'd like ask you a few questions.
Do you like me, simengred?
>yes
Where do you live, simengred?
>shenzhen
What kind of computer do you have?
>macbook
Alright,so you said 'yes' about liking me.
you live in 'shenzhen' .Not sure where that is.
And you have a 'macbook' computer .Nice.
1,从代码中可知raw_input(),括号中也可以填写变量,变量的内容为“>”在运行程序时,>起到一个提示输入的作用。
2,代码的参数变量argv部分,算是对习题13的复习。
从terminal中输入的参数ex14.py 和simengred传递给argv.
再有argv解包将ex14.py赋值给script,simengred赋值给user_name
再通过格式化控制符,将这些值“镶嵌”到句子中。