资源简介
python小游戏,我的大作业,拼图小游戏,需要用到graphics.py
代码片段和文件信息
# Hu YiWen Python programming
# 此游戏为九宫格拼图游戏,将打乱的数字,排序得到理顺的图案,即123456789依次排列在九宫格中极为胜利
from random import random
from graphics import*
from time import sleep
wide=100
#点的列表,对应的是9个方块的中心位置
po=[Point(200200)Point(300200)Point(400200)Point(200300)Point(300300)Point(400300)Point(200400)Point(300400)Point(400400)]
# update函数,更新游戏界面
def update(tablet0t1t2t3t4t5t6t7t8Nstep):
#如果这个单元为0的话,就把这个单元对应的text设为空,显示出来的时候就是空的方块,否则就是显示0了,不太好看
#如果不是0,那么处于某个方块的中心的txt设为对应的table【】【】的值
if (table[0][0]==0):
t0.setText(““)
else:
t0.setText(str(table[0][0]))
#如果这个单元为0的话,就把这个单元对应的text设为空,显示出来的时候就是空的方块,否则就是显示0了,不太好看
#如果不是0,那么处于某个方块的中心的txt设为对应的table【】【】的值
if (table[0][1]==0):
t1.setText(““)
else:
t1.setText(str(table[0][1]))
#如果这个单元为0的话,就把这个单元对应的text设为空,显示出来的时候就是空的方块,否则就是显示0了,不太好看
#如果不是0,那么处于某个方块的中心的txt设为对应的table【】【】的值
if (table[0][2]==0):
t2.setText(““)
else:
t2.setText(str(table[0][2]))
#如果这个单元为0的话,就把这个单元对应的text设为空,显示出来的时候就是空的方块,否则就是显示0了,不太好看
#如果不是0,那么处于某个方块的中心的txt设为对应的table【】【】的值
if (table[1][0]==0):
t3.setText(““)
else:
t3.setText(str(table[1][0]))
#如果这个单元为0的话,就把这个单元对应的text设为空,显示出来的时候就是空的方块,否则就是显示0了,不太好看
#如果不是0,那么处于某个方块的中心的txt设为对应的table【】【】的值
if (table[1][1]==0):
t4.setText(““)
else:
t4.setText(str(table[1][1]))
#如果这个单元为0的话,就把这个单元对应的text设为空,显示出来的时候就是空的方块,否则就是显示0了,不太好看
#如果不是0,那么处于某个方块的中心的txt设为对应的table【】【】的值
if (table[1][2]==0):
t5.setText(““)
else:
t5.setText(str(table[1][2]))
#如果这个单元为0的话,就把这个单元对应的text设为空,显示出来的时候就是空的方块,否则就是显示0了,不太好看
#如果不是0,那么处于某个方块的中心的txt设为对应的table【】【】的值
if (table[2][0]==0):
t6.setText(““)
else:
t6.setText(str(table[2][0]))
#如果这个单元为0的话,就把这个单元对应的text设为空,显示出来的时候就是空的方块,否则就是显示0了,不太好看
#如果不是0,那么处于某个方块的中心的txt设为对应的table【】【】的值
if (table[2][1]==0):
t7.setText(““)
else:
t7.setText(str(table[2][1]))
#如果这个单元为0的话,就把这个单元对应的text设为空,显示出来的时候就是空的方块,否则就是显示0了,不太好看
#如果不是0,那么处于某个方块的中心的txt设为对应的table【】【】的值
if (table[2][2]==0):
t8.setText(““)
else:
t8.setText(str(table[2][2]))
#修改显示步数
step.setText(str(N)+“ step(s)“)
#检查胜利方式,correct是正常列表,元素的顺序即正确的顺序,获得的new_table传入,进行比较,判断是否成功
def checkWin(seq):
correct =[123456780]
#比较两个列表,相等则返回True,否则返回False
if correct == seq:
return True
else:
return False
#使用random()函数来获得新的数据,则每次游戏界面开始的时候就能获得不一样的数据
def library():
#十种情况,全都是有解的情况,难易不一
x=int(10*random())
if x== 0 :
seq=[182435760]
elif x== 1:
seq=[638257410]
elif x== 2:
seq=[521637480]
elif x== 3:
seq=[812546730]
elif x== 4 :
- 上一篇:chapter7 data
- 下一篇:树莓派巡线白线.py
评论
共有 条评论