以下是一个用 Python 编写的 9*9 数独游戏的示例代码:\n\npython\nfrom termcolor import colored\n\n# 初始化数独游戏的空白格\nboard = [[0 for _ in range(9)] for _ in range(9)]\n\n# 打印数独游戏的当前状态\ndef print_board():\n for i in range(9):\n for j in range(9):\n if board[i][j] == 0:\n print(colored(" ", "red"), end=" ")\n else:\n print(board[i][j], end=" ")\n print()\n\n# 检查输入数字是否符合游戏规则\ndef is_valid(row, col, num):\n # 检查行是否重复\n for i in range(9):\n if board[row][i] == num:\n return False\n \n # 检查列是否重复\n for i in range(9):\n if board[i][col] == num:\n return False\n \n # 检查小九宫格是否重复\n start_row = (row // 3) * 3\n start_col = (col // 3) * 3\n for i in range(3):\n for j in range(3):\n if board[start_row + i][start_col + j] == num:\n return False\n \n return True\n\n# 解决数独游戏\ndef solve():\n for row in range(9):\n for col in range(9):\n if board[row][col] == 0:\n for num in range(1, 10):\n if is_valid(row, col, num):\n board[row][col] = num\n if solve():\n return True\n board[row][col] = 0\n return False\n return True\n\n# 开始游戏\ndef play_game():\n print("欢迎来到数独游戏!")\n print("请输入数独游戏的初始状态:")\n for i in range(9):\n row = input(f"请输入第{i+1}行数字(空格用0表示):")\n for j in range(9):\n if row[j] != '0':\n if not row[j].isdigit():\n print(colored("请输入符合规则的数字!", "red"))\n return\n board[i][j] = int(row[j])\n \n print("游戏开始!")\n print_board()\n print("解决中...")\n if solve():\n print("解决成功!")\n print_board()\n else:\n print("无解!")\n\nplay_game()\n\n\n使用此代码,你可以在命令行中运行游戏,并按照提示输入数独游戏的初始状态。空格用0表示。如果输入的数字不符合游戏规则,将会显示"请输入符合规则的数字!",并且该提示会以红色标注。游戏会自动解决数独,并在解决成功后打印出最终的结果。

Python 数独游戏:用代码解谜!

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

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