文章目录

  • 一、第一次写Python小游戏
  • 二、对小游戏进行改进
    • 1.对玩家进行提示
    • 2.提供多次机会给玩家
    • 3.每次答案应该是随机的
  • 三、总结

一、第一次写Python小游戏

刚开始学习Python这门计算机语言,所以在网上找了一个非常简易的小游戏来进行模仿编写,目的是从中学到一些简单的Python语法知识。 (文末送读者福利)

这个小游戏是一个猜数字的小游戏,比较简单,有利于我这种刚开始学习Python的萌新理解。

编程环境使用的是Python自带的集成开发环境IDLE。

程序代码如下:

temp = input("猜一下现在我想的是哪一个数字:")
guess = int(temp)if guess == 8:print("猜对啦!")
else:print("猜错啦!")print("游戏结束!")

运行结果如下:

没错,就是一个即时的问答小游戏。

部分代码解释:

temp = input("猜一下现在我想的是哪一个数字:")

“=”是赋值运算符,表示赋于;而if后面的“==”是一个数学运算符,表示等于。

input函数用于接收用户的输入并返回给temp,也就是把这个值赋给temp。

guess = int(temp)

input函数返回的是一个字符串,要对它进行转换才能和数字比较,所以使用int函数进行转换。

注:如果输入的是文字,将无法进行转换。

if guess == 8:print("猜对啦!")
else:print("猜错啦!")

这里是条件分支语句,用于判断,简单来说就是“如果…否则…”。

二、对小游戏进行改进

在成功运行这个小游戏代码并对其中的含义进行理解后,我们可以将代码进行改进。

1.对玩家进行提示

在玩家猜错的情况下,会告诉玩家是大了还是小了。

修改后的代码如下:

temp = input("猜一下现在我想的是哪一个数字:")
guess = int(temp)if guess == 8:print("猜对啦!")
else:if guess < 8:print("小啦~")else:print("大啦~")print("游戏结束!")

运行结果如下:


实现的方法就是在else语句中再加入一个完整的if-else语句,也叫“嵌套”。

2.提供多次机会给玩家

在玩家猜错后,还有机会进行再一次猜测。

修改后的代码如下:

counts = 3
while counts > 0:temp = input("猜一下现在我想的是哪一个数字:")guess = int(temp)if guess == 8:print("猜对啦!")breakelse:if guess < 8:print("小啦~")else:print("大啦~")counts = counts - 1print("游戏结束!")

运行结果如下:

要实现多次输入,就要利用循环,这里使用的是while函数,先将counts赋值为3,然后每次减一,这样可以给玩家提供三次机会。

在我第一次编写这个改进时,遇到了以下两个问题:

1.将counts-1放到了循环外面,如下:

#部分代码:else:if guess < 8:print("小啦~")else:print("大啦~")print("游戏结束!")
counts = counts - 1

这样就会造成counts无法在循环中自减,导致循环进入死循环,用户可以进行无限次输入。

2.没有加入break语句跳出循环:

如果没有加入break来跳出循环的话,猜对了之后这个循环也不会停。如下:

3.每次答案应该是随机的

如果每次答案都相同,那么在答案被猜出后,游戏就失去了可玩性,所以应该让每次的答案都不同。

修改后的代码如下 :

import randomcounts = 3
answer = random.randint(1,10)
while counts > 0:temp = input("猜一下现在我想的是哪一个数字:")guess = int(temp)if guess == answer:print("猜对啦!")breakelse:if guess < answer:print("小啦~")else:print("大啦~")counts = counts - 1print("游戏结束!")

运行结果如下:

这里运行了两次,可以看出两次的答案不同。

import random

在这次改进中,为了实现随机数,引入了随机函数random,而import就是导入包的意思。

answer = random.randint(1,10)

这行的意思是利用random随机函数从1到10中随机选择一个数,然后赋值给answer。然后用玩家输入的数字和这个随机数进行比较即可,而不再像以前那种与某个固定的值进行比较了。

三、总结

这是第一次编写Python程序,虽然是“抄”的代码,但还是把其中的含义理解通透了。除了代码本身的功能外,通过改进代码,来学习更多的知识,除了if-else语句外,我还学到了while语句、break语句和random函数等。

我也从自身所犯的错误中学到了许多经验。例如,写代码时一定要区分中英文、代码的拼写是否正确、代码的格式(缩进和对齐)等等。

读者福利:知道你对Python感兴趣,便准备了这套python学习资料,

对于0基础小白入门:

如果你是零基础小白,想快速入门Python是可以考虑的。

一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以找到适合自己的学习方案

零基础Python学习资源介绍

简易的Python小游戏,上班可玩一天,零基础小白可练手相关推荐

  1. python入门小游戏之跳一跳_从零基础开始,用python手把手教你玩跳一跳小游戏,直接打出高分...

    这对于很多人来说,可能是已经过时的游戏,但是对于python入门来说,却是一个非常值得学习的项目. TONOW收集了很多有关python入门的项目案例,包含了相应的教程和源码,哪怕你从未接触编程,也通 ...

  2. python小游戏扫雷怎么玩的技巧_用 Python 实现扫雷小游戏

    扫雷是一款益智类小游戏,最早于 1992 年由微软在 Windows 上发行,游戏适合于全年龄段,规则简单,即在最短的时间内找出所有非雷格子且在中间过程中不能踩到雷,踩到雷则失败,需重新开始. 本文我 ...

  3. python小游戏扫雷怎么玩_python实现扫雷游戏

    本文为大家分享了python实现扫雷游戏的具体代码,供大家参考,具体内容如下 本文实例借鉴mvc模式,核心数据为model,维护1个矩阵,0表无雷,1表雷,-1表已经检测过. 本例使用python的t ...

  4. 一行Python代码就可以下载任意网站视频,零基础小白也能轻松学会

    前言 对于Python爬虫很多人都不陌生,可以用它来批量下载文字.图片.视频等,其中涉及的知识点也是比较多的,但是Python中有一个方法,一行代码就能爬取任意网站上面的视频,只要你安装了Python ...

  5. python简单小游戏代码_一个简单的python小游戏---七彩同心圆

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理 用pygame做一个简单的python小游戏-七彩同心圆 玩法:每次点击鼠标时,会以鼠标为圆心,不断 ...

  6. python 玩公众号游戏_Python入门太难?不如从玩塔防小游戏开始,玩通关就能学会编程...

    我一直认为,在python入门阶段学习基础理论,太枯燥.所以我们整理了很多有关python的项目案例,有详细教程还有源码,希望能帮助更多对python感兴趣的人. 这是其中一个适合入门的Python项 ...

  7. 学编程很枯燥?用Python制作3个小游戏,边玩边学(含源码)

    经常听到有朋友说,学习编程是一件非常枯燥无味的事情.其实,大家有没有认真想过,可能是我们的学习方法不对? 比方说,你有没有想过,可以通过打游戏来学编程?今天我想跟大家分享几个Python小游戏,教你如 ...

  8. 边玩边学,13个 Python 小游戏真有趣啊(含源码)

    经常听到有朋友说,学习编程是一件非常枯燥无味的事情.其实,大家有没有认真想过,可能是我们的学习方法不对? 比方说,你有没有想过,可以通过打游戏来学编程? 今天我想跟大家分享几个Python小游戏,教你 ...

  9. 整理了30款Python小游戏附源码,五一有的玩了

    快到五一了,整理了 30 款 Python 小游戏源码分享给大家,具体内容可以点击下方视频号查看: 点击上方视频后,源码获取方式:①关注上方视频号.②点赞当前视频.③在当前视频评论区扣1 友情提示:获 ...

最新文章

  1. html超链接到index,HTML基础___超链接 第四天
  2. LBP特征学习(附python实现)
  3. 2018年11月12日
  4. R语言quantmod包
  5. AJAX+json+jquery实现预加载瀑布流布局
  6. 快速序列化组件MessagePack介绍
  7. Mybatis的resultMap自定义映射
  8. 忘却的旋律java2_[17-8-10]【复杂问题】打不开游戏
  9. 一文详解 Java 的几把 JVM 级锁
  10. 计算机java语言答案,2019年全国计算机二级Java语言练习试题及答案一
  11. 网络信息安全攻防实验室之基础关
  12. SPSS学习 日记
  13. LeetCode--宝石与石头
  14. 个人网站如何转型为商业网站
  15. postman进行批量测试的步骤
  16. js正则表达式验证大全及常用字符的说明
  17. 最强nba体验服显示服务器正在停机,最强NBA体验服
  18. 夜晚图像的目标检测-matlab
  19. 基于STC89C52RC单片机的密码门锁
  20. 德国银行继续对数字货币持观望态度

热门文章

  1. 获取视频文件格式信息的工具和方法
  2. 禁止公司内网电脑安装QQ电脑管家和360安全卫士
  3. Promethus===》普罗米修斯简介、时序数据库、监控系统的基本使用
  4. (一)白皮书、绿皮书、蓝皮书和黄皮书的区别
  5. 显示用户证件号码前后四位问题
  6. 哈工大计算机学院博士补助,哈尔滨工业大学关于博士生学制和第五年级博士生助研津贴管理工作的规定...
  7. 等级保护测评常见的疑难杂症,这篇文章一招制胜
  8. 交叉编译openblas库
  9. 度分秒与经纬度的互转
  10. WPF TabControl控件示例