Python五子棋代码
时间: 2023-11-05 18:58:04 浏览: 102
python五子棋代码
下面是一个简单的 Python 五子棋代码:
```python
import numpy as np
# 初始化棋盘
def init_board():
board = np.zeros((15, 15))
return board
# 检查落子是否合法
def is_valid(board, x, y):
if board[x][y] == 0:
return True
else:
return False
# 落子
def move(board, x, y, color):
board[x][y] = color
# 检查游戏是否结束
def is_game_over(board, x, y):
# 判断横向是否连成五子
if np.sum(board[x]) == 5:
return True
# 判断竖向是否连成五子
if np.sum(board[:, y]) == 5:
return True
# 判断主对角线是否连成五子
if x == y:
if np.sum(np.diag(board)) == 5:
return True
# 判断副对角线是否连成五子
if x + y == 14:
if np.sum(np.diag(np.fliplr(board))) == 5:
return True
return False
# 主程序
def main():
board = init_board()
color = 1 # 黑棋先手
while True:
print(board)
x = int(input("请输入落子横坐标:"))
y = int(input("请输入落子纵坐标:"))
if is_valid(board, x, y):
move(board, x, y, color)
if is_game_over(board, x, y):
print("游戏结束,{}棋获胜!".format("黑" if color == 1 else "白"))
break
color = 3 - color # 切换棋子颜色
else:
print("此位置已有棋子,请重新输入!")
if __name__ == '__main__':
main()
```
这个代码实现了一个简单的五子棋游戏,其中使用了 Numpy 库来处理棋盘。你可以在 Python 环境中运行它,开始一局五子棋游戏。
阅读全文