用Python制作好玩的小游戏

炎炎夏日,独坐家中,闲来无事,便用Python写了2个简单的解闷小游戏,分享给你们,也希望大家通过这两个小游戏可以学习Python的编程知识。

1.用Python破解九宫格

九宫格最早叫「洛书」,现在也叫「幻方」。九宫格游戏对人们的思维锻炼有着极大的作用,千百年来对人们的思维训练影响巨大,从古时起人们便意识到九宫格的教育意义,现在也经常出现在文学、影视中。

 

好了,放了这么多洋屁,该进入正题啦!

九宫格要求:把1至9这九个数字放进一个3*3的网格,思考怎么使每行、每列以及两个对角线上的三数之和都等于15。

破解九宫格的算法有很多种,今天我们就用最原始的算法——暴力破解法。

九宫格是三行三列,每一行都是1-9中的3个数字,所以我们先取1-9所有的3个数字的全排列组合[S1,S2,…,Sn],总共有9*8*7=504种。

这样3行,其实就是每一行从这个504序列里面取一个放到第一排、第二排、第三排,就形成了一个矩阵。

最后对这个3*3的矩阵,只要判断行、列、对角线和斜对角线都是15就可以了。

代码思路

Step1:获取1-9数字的全排列

Python标准库中有一个很牛逼的模块——itertools,这个模块提供了很多操作迭代对象,非常方便。

这次我们用itertools里面的

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值