本文實例為大家分享了python五子棋游戲的具體代碼,供大家參考,具體內容如下
#五子棋
‘''
矩陣做棋盤 16*16 “+”
打印棋盤 for for
游戲是否結束
開始下棋 while 游戲是否結束:
黑白交替 player=0 p%2==0 ==1 p+=1
下棋動作一樣 但是棋子不一樣
‘''
代碼
#創建棋盤的程序
def initBoard():
global board #調用全局的board
board=[None]*16
for i in range(len(board)):
board[i]=["+ "]*16
#打印棋盤的程序
def printBoard():
global board
for i in range(len(board)):
for j in range(len(board[i])):
print(board[i][j],end=" ")
print("")
#開始下棋的程序
def startGame():
global board
player=0
while isGameContinue():
if player%2==0:
#黑方下棋
print("==>黑方下棋")
if not playChess("●"):
continue
else:
#白方下棋
print("==>白方下棋")
if not playChess("○"):
continue
player+=1
def playChess(chess):
#獲取位置
x=int(input("==> X="))-1
y=int(input("==> Y="))-1
if board[x][y]=="+ ":
board[x][y]=chess
printBoard()
return True #落子成功
else:
print("==> 已有棋子 請重新落子\a")
printBoard()
return False#落子失敗
def isGameContinue():
for i in range(len(board)):
for j in range(len(board[i])):
if board[i][j]!="+ ":
#橫向
if j<=11:
if board[i][j]==board[i][j+1]==board[i][j+2]==board[i][j+3]==board[i][j+4]:
whoWin(i,j)
return False
#豎向
if i<=11:
if board[i][j]==board[i+1][j]==board[i+2][j]==board[i+3][j]==board[i+4][j]:
whoWin(i,j)
return False
#反斜
if i<=11 and j<=11:
if board[i][j]==board[i+1][j+1]==board[i+2][j+2]==board[i+3][j+3]==board[i+4][j+4]:
whoWin(i,j)
return False
#正斜
if i>=4 and j<=11:
if board[i][j]==board[i-1][j+1]==board[i-2][j+2]==board[i-3][j+3]==board[i-4][j+4]:
whoWin(i,j)
return False
return True
def whoWin(i,j):
if board[i][j]=="●":
print("黑方勝!")
else:
print("白方勝!")
for i in range(10):
print("\a")
board=[]
initBoard()
printBoard()
startGame()
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

