python游戏入门实例大全详细教程全_Python入门教程实战,用Python做一个有趣的拿石子游戏...

74a4b7879c51721db8e75f7e1886e336.png

今天以一个小实例带你入门Python,编写一个叫"拿石子"的小游戏,让你可以与电脑对弈。

拿石子游戏规则很简单,一开始有一定数量的石子(假如是10),然后两人轮流从石子堆中取走一定范围的数量(例如是1,2,3)。以此类推,最后拿走剩余的所有石子的人就输了。

先看看最终效果的动态:

842d227222a7d095ced5d5dc3ed44e8f.png

我们就用Python简单实现一个,来吧。

定义主要的方法

833c006c3e7617bb742589f5d6055be3.png

如上图,这次主要需要一个随机函数

一个可以重复尝试调用某个方法的功能,我们使用retrying库

使用命令 pip install retrying 即可安装完成

再来看看主流程是如何调用这些方法

40180bcc2c84c36badbc19abb9ca60f3.png

一开始就调用 get_start_num ,生成一个开局的数

然后来个死循环 while 1:

循环中,先调用 cpu_number,表示电脑先做选择

然后调用方法 judge,用于判断当前局面的情况,并返回一个当前石子数量

紧接着调用 user_number,获取我们的输入数,也做一样的局面判断方法

然后,我们回头去把那些方法给实现就好了。如下

a5cbffc0f13490e3b4ff9fb3b95142c6.png

(1) 使用方法 random.randint ,得到一个随机数

(2) 同样使用方法 random.randint,得到随机数,不过如果当前只剩下少于3的数量,那么就用这个数来作为end。

(3) 这里就是用 retrying库的一个retry装饰器,表示我们这个方法只要做错误就会被重新执行

(4) 由于这里是我们输入,所以这里判断输入的东西是否可以转成int,不合法的情况下只要主动抛出异常即可触发retry

(5) 这里就判断输入的值是否在范围中

今天的重点

使用 random.randint 生成随机数

使用 retrying模块 ,可以简单方便让某个方法重复执行

最后

这个游戏的实现其实还有不完善的地方,比如电脑玩家目前的选择是随机的,如果你有兴趣可以自己改善他。

接下来我会改造这个部分,让电脑玩家可以自己跟自己不断进行对弈,然后学会如何取胜。

如果觉得本文对你有所帮助,记得关注、评论、转发、收藏噢~

关注并私信我"python",即可获得按水平领域分类好的Python资料,还会不定期更新有用的Python技巧。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值