好的,以下是一个简单的五子棋游戏的Python代码示例:

# 创建一个 15x15 的棋盘
board = [[' ' for _ in range(15)] for _ in range(15)]

# 打印棋盘
def print_board():
    print("  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15")
    for i in range(15):
        print(chr(ord('A') + i) + ' ' + ' '.join(board[i]))

# 判断某个位置是否可下棋
def is_valid_move(row, col):
    if row < 0 or row >= 15 or col < 0 or col >= 15:
        return False
    if board[row][col] == ' ':
        return True
    return False

# 下棋
def make_move(row, col, player):
    board[row][col] = player

# 检查游戏是否结束
def is_game_over(row, col, player):
    directions = [(0, 1), (1, 0), (1, 1), (1, -1)]  # 横、竖、斜向检查
    for dx, dy in directions:
        count = 1
        x, y = row, col
        while count < 5:
            x += dx
            y += dy
            if not is_valid_move(x, y) or board[x][y] != player:
                break
            count += 1
        x, y = row, col
        while count < 5:
            x -= dx
            y -= dy
            if not is_valid_move(x, y) or board[x][y] != player:
                break
            count += 1
        if count >= 5:
            return True
    return False

# 游戏主循环
def game_loop():
    current_player = 'X'
    while True:
        print_board()
        move = input("玩家 {} 输入下棋位置(例如 A1):".format(current_player))
        col = ord(move[0]) - ord('A')
        row = int(move[1:]) - 1
        if not is_valid_move(row, col):
            print("无效的位置,请重新输入!")
            continue
        make_move(row, col, current_player)
        if is_game_over(row, col, current_player):
            print("玩家 {} 获胜!".format(current_player))
            break
        current_player = 'O' if current_player == 'X' else 'X'

# 启动游戏
game_loop()

以上代码实现了一个简单的控制台五子棋游戏,玩家可以输入行列坐标来下棋,输入例如 "A1" 表示在第一行第一列下棋。游戏会判断是否有玩家获胜并打印棋盘

做个五子棋谢谢 ptyhon

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

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