文档介绍
利用Python写“猜数字”,“猜词语”,“谁是卧底”这三个游戏,从而快速掌握Python编程的入门知识,包括Python语法/列表/元组/字典/流程控制/库函数等等。
环境参数
linux平台,Python 3.4。需要在linux中把Python 3.4编译一下,这样编写Python程序时保存为.py格式的文件并添加执行权限再终端运行即可(原理跟shell脚本相同),非常方便。
ps:贴出来的Python程序代码在windows中也兼容,只不过运行方式不是命令行,而是要通过Python软件。Python软件可以上官网下载安装点击打开链接 ,在学习的时候,可以直接在Python软件上面输入python语句即可打印结果,也就是说Python无需编译即可运行,很多人也称之为“脚本”语言。
设计实现
猜数字
很多人在聚餐时都玩过猜数字游戏,由某人随机出一个指定范围内的数,然后其他人一个一个猜,猜的过程中区间不断缩小,直到猜中为止。
这里的猜数字游戏就是用程序来代替那个出数字的人,程序算法设计为:
1.输入数字区间—>2.系统产生区间内的随机数—>3.玩家输入自己猜的数字—>4.比较玩家猜的与答案的高低并提示—>5.未猜中则回到3,猜中则提示猜次数
代码很少,如下所示:
#!/usr/local/bin/python3
import random
bot=int(input('Set range bottom\n'))
top=int(input('Set range top\n'))
rand=random.randint(bot,top)
print ('Random number in ['+str(bot)+','+str(top)+'] generated!')
num=int(input('###Guess the number###\n'))
cnt=1
while (num!=rand):
if (num<rand):
print('*_* Lower than the answer')
else:
print('T_T Higher than the answer')
num=int(input('###Guess the number###\n'))
cnt=cnt+1
print('^_^ You get the answer with [%d] times'%cnt)
第一行是要让linux系统知道这是Python3程序,random是产生随机数的库函数,要注意的是python对格式要求很严格,因为它不用通过{}而是通过缩进量判断流程。
通过这个可以掌握基本的语法和编写规则了,下面再试试有点难度的,用到词组和循环控制等知识。
猜词语
电视节目中的”你来比划我来猜“大家应该都看过,而且很多人也玩过,规则就是一个人看词语比划相应动作和说一些提示,另一个人看不到词语要通过比划的动作猜出来,猜的过程中主持人判断是否符合规则。
某一组玩家猜词语的算法设计为:
1.开始计时—>2.猜词语—>3.答对则正确数加1并回到2,要跳过或犯规了则直接回到2,超时了直接跳到3—>3.循环10次后或时间结束后统计答对的题数
有num组玩家就进行以上流程的num次循环,当然也要准备x组词语,因为每组玩家猜的词语是不同的。
代码量不大,如下所示:
#!/usr/local/bin/python3
import time
num = int(input('有多少组玩家\n'))
guessWord = []
correct = []