python制作简单五子棋游戏

时间:2021-05-22

本文实例为大家分享了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+=1def 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 Truedef whoWin(i,j): if board[i][j]=="●": print("黑方胜!") else: print("白方胜!") for i in range(10): print("\a")board=[] initBoard()printBoard()startGame()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章