14 提示和传递
1.新建一个文件,文件的名称为ex14.py
2.将下面的代码复制到文件中
from sys import argv #导入argv模块 script, user_name = argv #把argv的值取出来分别赋给左边的变量 prompt = '>' #定义一个变量 print (f"Hi {user_name},I'm the {script} script.") #你好, 。我是脚本 。 print ("I'd like to ask a few questions.") #我想问几个问题 print (f"Do you like me {user_name}?") #你喜欢我 吗? likes = input(prompt) #在输入内容前打印一个字符串 print (f"Where do you live {user_name}?") #你住在那里 ? lives = input(prompt) #在输入内容前打印一个字符串 print ("What kind of computer do you have?") #你有什么样的电脑? computer = input(prompt) #在输入内容前打印一个字符串 print (f""" Alright, so you said {likes} about liking me. You live in {lives}. Not sure where that is. And you have a {computer} computer. Nice. """) #好吧,你说 喜欢我。 #你住的 详细地址就不知道了。#你有一台 的电脑。太好了。
3.找到ex14.py的文件,在该文件夹下空白处按住 Shift+鼠标右键,找到在此处打开Powershell窗口
4.在窗口内输入 python .\ex14.py Zed 显示结果如下

5.巩固练习
1.查一下《Zork》和《Adcenture》是两款什么样的游戏。看看能不能下载到一版,然后玩玩看。
2.将prompt 变量改成完全不同的内容在运行一遍。
3.给你的脚本在添加一个参数,并使用这个参数,格式和前一个习题中的first,second = ARGV一样。
4.确认你弄懂了如何像ex14.py最后一行中print那样将"""风格的多行字符串与{}格式化工具结合起来。
6.常见问题解答
1.运行这段脚本时出现SyntaxError:invalid syntax
在说一遍,你应该在命令行而不是在python环境中运行脚本。如果你先键入了python然后试图键入 python .\ex14.py Zed ,就会报这个错误。你是在python里面运行python。关掉窗口,重新运行即可。
2.修改提示符是什么一意思?
看变量定义prompt = ‘>’,将它改成一个不同的值。这个应该难不倒你,只是修改一个字符串而已,前面的13个习题都是冠以字符串的,自己花时间搞定。
3.发生错误ValueError:not enough values to unpack。
记得上次我说过,你应该到“显示结果“部分重复我的动作。这里也需要你这么做。把精力集中到我如何键入该命令,以及为什么我提供了一个命令行参数。
4.怎么用IDLE运行这些代码?
别用IDLE。
5.我可以用双引号定义prompt变量吗?
当然可以,试试看就知道了。
6.运行这段脚本时出现NameError:name 'prompt' is not defined.
要么拼写错误,要么漏了这行。回去比较你写的和我写的代码,从最后一行开始直到第一行。只要看到这种错误,就说明可能发生了拼写错误,或者这个变量没有创建。
浙公网安备 33010602011771号