本案例通过一个猜单词游戏的设计和实现,帮助读者了解使用Python系列数据类型和控制流程。可以对应于教程正文的第2章到第8章。 猜单词游戏是一种简单的游戏,计算机从指定单词列表中抽取一个单词,通过算法,把单词的字母顺序打乱,然后输出给玩家猜测。玩家根据乱序的字母,组合猜测输入正确的单词。计算机确定是否猜测正确。 使用元组或列表构建待猜测的英文单词库列表WORDS,使用random模块的choice()函数从单词的元组中随机抽取一个英文单词word。然后把该英文单词的字母乱序排列(方法是每次随机抽取一个位置的字符放入乱序的jumble字符串中,并从原word中删除该字符)。 游戏一开始先显示乱序后的字符串jumble,并提示用户输入猜测的结果,如果错误,提示继续输入,直至输入正确。猜对之后,可以询问是否继续游戏。游戏也可以通过Ctrl+C强制中断运行。 读者也可以扩展程序,例如从文件中读入单词列表,记录游戏玩家的得分情况等。 【例CS5.1】猜单词游戏示例程序。
#模块:c:\pythonpa\cs\word_jumble.py import random #建立英文单词库,以元组的形式表示 WORDS = ['apple','pear','banana','cherry','good','better','best', 'python','while','tuple','dictionary','jumble','difficult', 'aesthetic','stereotype','civilization','anniversary'] print('欢迎参加猜单词游戏!\n请把乱序后的字母组成一个单词\n') isContinue = 'Y' while isContinue in ('Y', 'y'): #随机挑选一个单词 word = random.choice(WORDS) answer = word #保存答案 #将选出的单词进行乱序 jumble = '' for i in word: #随机抽取一个位置的字符放入乱序jumble中,并从原word中删除该字符 position = random.randrange(len(word)) jumble += word[position] word = word[:position] + word[(position+1):] #输出乱序后的单词 print('乱序后的单词:', jumble) #接受玩家猜的单词 guess = input('请输入您猜测的结果:') while guess != answer: guess = input('结果不对,请重新猜测:') print('恭喜您,猜对了!') #询问是否重复游戏 isContinue = input('是否继续(Y/N)?') print('谢谢参与,欢迎下次再玩!')
《Python程序设计与算法基础教程(第3版·项目实训·题库·微课视频版)》 ISBN:9787302623816
|