这个Python自动扫雷算法写完了,估计看懂的人十不存一了吧
效果
闲来无事,打开虚拟机上的扫雷玩了玩,觉得自己计算很浪费时间,还容易遗漏,就做了个自动扫雷。
简单模式下很容易通关,困难的就看脸了,感兴趣的可以拿去运行一下。
自动化处理核心代码段在 168~273行。
次日,发现自动扫雷算法并不完整,上次的代码仅对单个数字周围进行判断。
但在一些情况下,单个数字无法判断,要综合一片小区域确定某些方块是否一定是炸弹,或者一定安全。
暂且称为高级算法。(并不是算法有多高级,本质上还是取集合(区域),进行大量的判断,难在复杂判断的逻辑关系以及集合、字典的操作上)。
通过半天的归纳总结,找到规律后开始设计代码。
**本次修改还优化了输出格式,使得在大区域下更容易确定方块的坐标。**
- 【代码中一些重复的地方可以提取出来作为单独的方法,通过改变参数位置来实现相同的功能,让代码看上去更精简】
- 【但长时间的修改代码,随着变量、变量类型、数据结构嵌套和逻辑关系的不断增加,有点被搞得头晕了】
- 【所以既然运行上没有错误,多次试验也没有发现毛病,就不去管它了。说不定也是靠着什么bug运行起来了呢】
- 【事实上最初写出来的高级算法代码还多了一个子模块,这个模块在一次高级算法结束之后进行进一步处理】
- 【在设计算法的时候,考虑到这样能减少遍历游戏窗口的次数,加快运行速度,并且可以确定更多的更复杂的坐标及操作】
- 【虽然写好代码之后第一次运行全自动困难模式顺利通关,但在后来的几次测试中总会错把炸弹点开
这个Python自动扫雷算法写完了,估计看懂的人十不存一了吧相关推荐
- python自动扫雷_Python自动扫雷实现方法
Python自动扫雷实现方法 来源:中文源码网 浏览: 次 日期:2018年9月2日 [下载文档: Python自动扫雷实现方法.txt ] (友情提示:右键点上行txt文档名-> ...
- python自动扫雷_利用Python实现自动扫雷
自动扫雷一般分为两种,一种是读取内存数据,而另一种是通过分析图片获得数据,并通过模拟鼠标操作,这里我用的是第二种方式. 一.准备工作 我的版本是 python 3.6.1 python的第三方库: w ...
- 基友扫雷通关跟我炫耀!于是用Python自动扫雷程序十秒通关
起因是这样的,基友和我一起玩扫雷高难度,今天他来告诉我他的通关了! 各种炫耀,如下图! 于是,我用就用Python开发了个自动扫雷程序!跟他装了逼,瞬间喊我哥,要我教他 好了,不废话了!本文用于娱乐, ...
- python自动扫雷_python实战教程之自动扫雷
前言 自动扫雷一般分为两种,一种是读取内存数据,而另一种是通过分析图片获得数据,并通过模拟鼠标操作,这里我用的是第二种方式. 一.准备工作 1.扫雷游戏 我是win10,没有默认的扫雷,所以去扫雷网下 ...
- python和java一样吗-三分钟看懂Python和Java的区别
随着人工智能的火爆,Python和Java一直在各种流行编程语言中名列前茅.其实Java和Python有些相似,因为很多编程语言之间是互通的.Java现在还是第一,不知道Python未来会不会超越Ja ...
- python和java的区别-三分钟看懂Python和Java的区别
随着人工智能的火爆,Python和Java一直在各种流行编程语言中名列前茅.其实Java和Python有些相似,因为很多编程语言之间是互通的.Java现在还是第一,不知道Python未来会不会超越Ja ...
- [转载] Python 递归 深入理解递归 Python递归剖析,绝对让你看懂!
参考链接: Python | print()中的结束参数 目录 递归剖析 递归的两个过程 return 返回值 详解 递归思路二分法和递归尾递归递归练习题 递归剖析 递归真的很重要,之前学的时候,学的 ...
- 判别两棵树是否相等 设计算法_一文看懂生成对抗网络 - GANs?(附:10种典型算法+13种应用)...
生成对抗网络 – GANs 是最近2年很热门的一种无监督算法,他能生成出非常逼真的照片,图像甚至视频.我们手机里的照片处理软件中就会使用到它. 本文将详细介绍生成对抗网络 – GANs 的设计初衷.基 ...
- Python 递归 深入理解递归 Python递归剖析,绝对让你看懂!
目录 递归剖析 递归的两个过程 return 返回值 详解 递归思路 二分法和递归 尾递归 递归练习题 递归剖析 递归真的很重要,之前学的时候,学的一知半解,以为真正了解,每次想到递归,就记得一句:返 ...
- lempel ziv matlab,基于Python的LempelZiv算法的熵估计
此函数允许估计时间序列的熵.它基于Lempel-Ziv压缩算法.对于长度为n的时间序列,熵估计为: E=(1/n和L_i)^-1 ln(n) 式中,L逯i是从位置i开始的最短子串的长度,该子串之前没有 ...
最新文章
- 略谈新时尚风之网上购物领域
- JavaScript中HTML的DOM
- mysql常用操作(一)
- Quartz2D知识点聚合案例
- SQLServer导入excel报错因缺少插件
- Oracle单个数据文件超过32G后需要扩容
- linux系统清理内存,如何清除linux的内存缓存,缓冲和交换空间
- 深度学习TensorFlow的55个经典案例
- 谷歌/FOFA搜索引擎使用
- 【机器学习】十二、一文看懂支持向量机原理
- 在移动硬盘上装双系统(一个Ventory+微PE,一个Win10家庭版)
- python之selenium爬取数据(爬取airbnb房源信息)
- 让AI拥有好奇心,它就可以一直看电视了
- java xml sql_走进 SQL/XML
- python 爬虫 快看漫画整站爬取(解决动态加载漫画图片地址、漫画图片合成长图、图片文件排序等问题)
- idea,maven飘红及无法打包问题
- B站有哪些值得Java初学者看的视频,Java学习路线
- 用Android手机充当台式电脑的摄像头、麦克风和音箱
- 八.deepin V20.6安装mysql8.0.30
- 【转】第5章 数据的描述性分析
热门文章
- 【loj】#10064. 「一本通 3.1 例 1」黑暗城堡(最短路径生成树 dijkstra+Prim)
- 大规模病毒入侵,全靠分布式
- SF中对象发出消息后在chatter上显示名字的问题
- 玩转算法与数据结构 C++描述 选择排序
- 编程序,用getchar函数读人两个字符给c1和c2,然后分别用
- kali linux学习手册,Kali Linux学习手册
- UIView Animation 动画学习总结
- 细讲如何解决Idear中使用@Test时提示Junit不存在问题
- source test.sh、sh test.sh、./test.sh有什么区别
- 如何求七参数以及七参数在软件中的应用
- python自动扫雷_Python自动扫雷实现方法