資源簡介
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
評論
共有 條評論