猫史档案馆


【Python作品分享】双人井字棋v1.0【作品秀】

用户:外星研究所外星研究所查看:0 回复:2 评论:0 创建时间:2023-11-11T16:39:41


【作品展示】

center_image

 

【作品介绍】

●你可以与你的同伴一起体验在代码世界下井字棋的快乐。

○此游戏暂无单机版本

○此游戏可能由AI合成

 

【作品源代码】

# 井字棋游戏

# 初始化游戏板
board = [' '] * 9
current_player = 'X'
game_over = False

# 显示游戏板


def print_board(board):
    print("-------------")
    print("|", board[0], "|", board[1], "|", board[2], "|")
    print("-------------")
    print("|", board[3], "|", board[4], "|", board[5], "|")
    print("-------------")
    print("|", board[6], "|", board[7], "|", board[8], "|")
    print("-------------")

# 判断游戏是否结束


def check_game_over(board):
    # 检查行
    for i in range(0, 9, 3):
        if board[i] == board[i+1] == board[i+2] != ' ':
            return True
    # 检查列
    for i in range(3):
        if board[i] == board[i+3] == board[i+6] != ' ':
            return True
    # 检查对角线
    if board[0] == board[4] == board[8] != ' ' or board[2] == board[4] == board[6] != ' ':
        return True
    # 检查平局
    if ' ' not in board:
        return True
    return False


# 游戏主循环
while not game_over:
    print_board(board)
    print("当前玩家:", current_player)

    # 获取玩家输入
    move = int(input("请玩家输入位置(1-9):")) - 1

    # 检查位置是否合法
    if move < 0 or move >= 9 or board[move] != ' ':
        print("无效的位置,请重新输入!")
        continue

    # 更新游戏板
    board[move] = current_player

    # 检查游戏是否结束
    game_over = check_game_over(board)

    # 切换玩家
    current_player = 'O' if current_player == 'X' else 'X'

# 游戏结束,显示最终结果
print_board(board)
if ' ' not in board:
    print("平局!")
else:
    print("玩家", current_player, "获胜!")

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
三体_歌者三体_歌者

有BUG

点赞0


评论


外星研究所外星研究所

确实有,我知道,毕竟这玩意是AI搞的

点赞0


评论