python实现的扫雷游戏源码

python实现的扫雷游戏源码

ID:8810533

大小:27.49 KB

页数:4页

时间:2018-04-08

上传者:U-5734
python实现的扫雷游戏源码_第1页
python实现的扫雷游戏源码_第2页
python实现的扫雷游戏源码_第3页
python实现的扫雷游戏源码_第4页
资源描述:

《python实现的扫雷游戏源码》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

样例输出:mine=13length=10OriginMatrix=[]#保存原始地雷矩阵NumberMatrix=[]#保存计算后的数字矩阵StateMatrix=[]#保存矩阵的显示状态#生成地雷矩阵fromrandomimportrandintforiinrange(0,length):temp=[]forjinrange(0,length):temp.append('.');OriginMatrix.append(temp)foriinrange(0,mine):x=randint(0,9)y=randint(0,9)OriginMatrix[x][y]='*'delrandint#randint不再使用#生成对应的数字矩阵#函数定义,该函数返回某点相邻地雷数(包括自身)defnumber(x,y):counter=0foriin[0,1,-1]:forjin[0,1,-1]:ifx+i<0orx+i>=length:continueelify+j<0ory+j>=length:continueelifOriginMatrix[x+i][y+j]!='*':continueelse:counter+=1returncounter#计算 forxinrange(0,length):temp=[]foryinrange(0,length):temp.append(number(x,y))NumberMatrix.append(temp)#剔除地雷点(将其相邻地雷数设为9,表示该点为地雷)foriinrange(0,length):forjinrange(0,length):ifOriginMatrix[i][j]=='*':NumberMatrix[i][j]=9delOriginMatrix#OriginMatrix不再使用#定义一些用到的函数#显示函数,用于显示矩阵fromosimportsystemdefdisplay(verdict):#verdict参数用于在挖中地雷时显示地雷system('cls')temp=''foriinrange(0,length):temp+=(str(i)+'')print(temp)foriinrange(0,length):temp=str(i)+''forjinrange(0,length):ifNumberMatrix[i][j]==9andnotverdict:temp+='*'continueifStateMatrix[i][j]:ifNumberMatrix[i][j]==0:temp+=''else:temp+=(str(NumberMatrix[i][j])+'')else:temp+='■'print(temp)#剔除函数,用于剔除显而易见的不为地雷的位置CheckSet=set()defopenWhile(x,y):if(x,y)inCheckSet:returnelifNumberMatrix[x][y]>1:returnelse:StateMatrix[x][y]=TrueCheckSet.add((x,y))#与0相邻的都显示ifNumberMatrix[x][y]==0:foriin[-1,0,1]: forjin[-1,0,1]:ifx+i>=0andx+i=0andy+j=0:openWhile(x-1,y)ify-1>=0:openWhile(x,y-1)ifx+1

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭