下面是一个简单的示例代码,实现了一个基本的人机交互五子棋游戏:

import random

# 初始化棋盘
board = [[' ' for _ in range(15)] for _ in range(15)]

# 判断是否胜利
def check_win(board, row, col, player):
    # 横向检查
    for i in range(15-4):
        if board[row][i:i+5] == [player]*5:
            return True
    # 纵向检查
    for i in range(15-4):
        if [board[j][col] for j in range(i,i+5)] == [player]*5:
            return True
    # 斜向检查
    for i in range(15-4):
        if [board[row+j][col+j] for j in range(i,i+5)] == [player]*5:
            return True
        if [board[row-j][col+j] for j in range(i,i+5)] == [player]*5:
            return True
    return False

# 人类玩家下棋
def human_player():
    while True:
        row = int(input("请输入行号(0-14):"))
        col = int(input("请输入列号(0-14):"))
        if board[row][col] == ' ':
            board[row][col] = 'X'
            break
        else:
            print("该位置已经有棋子了,请重新输入。")

# 机器人玩家下棋
def ai_player():
    while True:
        row = random.randint(0, 14)
        col = random.randint(0, 14)
        if board[row][col] == ' ':
            board[row][col] = 'O'
            break

# 游戏主循环
while True:
    # 人类玩家下棋
    print("人类玩家下棋:")
    human_player()
    # 检查人类玩家是否胜利
    if check_win(board, row, col, 'X'):
        print("人类玩家获胜!")
        break
    # 机器人玩家下棋
    print("机器人玩家下棋:")
    ai_player()
    # 检查机器人玩家是否胜利
    if check_win(board, row, col, 'O'):
        print("机器人玩家获胜!")
        break

这个示例代码实现了一个简单的人机交互五子棋游戏,玩家和机器人轮流下棋,判断是否胜利。其中,玩家下棋使用input函数获取用户输入的行号和列号,机器人下棋使用random库生成随机的行号和列号。通过check_win函数判断是否胜利,横向、纵向和斜向有相同的五个棋子即为胜利

请用python实现人机交互五子棋游戏

原文地址: https://www.cveoy.top/t/topic/hOt0 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录