用Python写个猜数字游戏,写游戏难道比玩游戏还好玩(12)
小朋友们好,大朋友们好!
我是猫妹,一名爱上Python编程的小学生。
欢迎和猫妹一起,趣味学Python。
今日主题
开学差不多有1个月了吧?
猫妹刚刚从冷假的玩玩玩模式切换到上学的学学学模式。
你呢?
这是猫妹的课程表,你的课程表长啥样?
和猫妹的课程表区别大不大?
很期待你的课程表长啥样!
除了上述课程外,猫妹还有一些好玩的兴致课,比如国画啦!跳舞啦!
忙起来后,Python学习时间就少了。
猫妹很喜欢Python,学习自然不能放下!
最近猫妹在看YCL Python四级考试内容。
猫妹发现很多像猫妹一样的初学者,很轻易犯眼高手低的毛病。
展开全文
啥是眼高手低呢?
就是一看就会,一做就错。
编程嘛!
那是非常严厉的,错了一个符号都不行,会影响程序的执行。
编程是一门重在实践的课程,我们一定要多实践,多在电脑上敲打。
当我们在一个地方栽过一个跟头、两个跟头、三个跟头......
这个栽过跟头的地方,我们很快就会记住,以后再也不会犯同样的错误了。
失败是成功之母嘛!
猫妹的一点小感悟:多敲代码,在理解代码含义的基础上多敲代码。
项目需求
今天的话题编写一个小游戏:猜数字(1~6)。
咱们猜想一个数字(1~6),电脑随机选一个数字(1~6),看这两个数字是否相等,相等表达猜对。
这个小游戏没有实际用途,就是供咱们练手的。
咱们主要学习下代码编写迭代的过程。
程序演示
请看图,输进数字(假如非法,会提示重新输进),当猜对时,会提示是否陆续游戏。
程序编写
罗马不是一天建成的
当然,代码不是一天写好的。
咱们最终看到用到的软件,也是由不同版本逐渐迭代升级的。
咱们的第1个版本长这样:
当我们输进的不是数字时,程序会怎么样?
程序会出错吗?
试下不就可以了,比如我输进如下字符,在一串数字前加上字母。
它不干,直接报错了。
看来,我们需要一个检测用户的输进逻辑,看输进的是否是数字。
假如是,则推断。
假如不是,请用户重新输进。
咱们的第2个版本长这样:
其中的if not n.isdecimal()表达输进的字符不是十进制数字。
isdecimal的简单介绍,可以网上搜下哦!
此时,假如输进的不是数字,会提示重新输进。
isdecimal 、isdigit、isnumeric这三个字符串方法都用于推断字符串是否为数字。
为什么用三个方法呢?他们的区别是什么呢?
isdecimal:是否为十进制数字符,包括Unicode数字、双字节全角数字,不包括罗马数字、汉字数字、小数;
isdigit:是否为数字字符,包括Unicode数字,单字节数字,双字节全角数字,不包括汉字数字,罗马数字、小数
isnumeric:是否所有字符均为数值字符,包括Unicode数字、双字节全角数字、罗马数字、汉字数字,不包括小数。
咱们的第3个版本长这样:
功能实现了,但是趣味性不强。
怎么加些趣味性呢?
来些随机颜文字表情吧!
你知道什么喊颜文字表情吗?
就是用字符表达一些表情,比如下面这些:
咱们的第4个版本长这样:
上面的游戏,当我们猜想的数字和计算机随机的数字一样时,就break了。
还记得break的含义吗?
break,退出整个循环
continue,退出单次循环。
猜想数字正确,游戏退出。
这个退出能否让用户来决定呢?
于是乎,有了下面的代码:
程序打包:
程序是写好了,感觉有点意思。
想发给我的好朋友玩,可是她的电脑没有安装Python,怎么办?
把程序打包发布后,程序的运行就不依靠Python环境。
你的小伙伴就可以欣赏你的游戏大作啦!
我们用pyinstaller命令就可以对程序进行打包了,制定要打包的Python文件,指定一个图标文件。
程序打包完毕,我们进进dist文件夹。
没错,这里的4.exe文件就是我们的程序文件。
我们可以修改名称,后缀.exe不能修改。
Windows中,后缀表达这个文件是什么类型文件,这很重要。
你是人,你是神,人和神的区别,看的就是这个后缀。
你喊张三,你喊李四,张三和李四的区别,看的就是这个名称。
好了,今天的分享就到这里,谢谢大家的阅读。
麻雀虽然小,五张俱全。
上面的代码,你学会了吗?
文章的最后,我们一起熟悉下Python之父:吉多·范罗苏姆(Guido van Rossum),他出生于1956年1月31日,毕业于阿姆斯特丹大学。
吉多·范罗苏姆是一名荷兰计算机程序员,他作为 Python 程序设计语言的作者而为人们熟知。
在 Python 社区,吉多·范罗苏姆被人们认为是“慈爱的独裁者(BDFL)”,意思是他仍然关注 Python 的开发进程,并在必要的时刻做出决定。
他在 Google 工作,在那里他把一半的时间用来保护 Python 的开发。
2020年11月12日, Python之父Guido van Rossum在自己的官方公布:由于退休生活太无聊,自己决定加进Microsoft 的 DevDiv Team。
假如碰到什么问题,咱们多多交流,共同解决。
我是猫妹,咱们下次见!