python怎么实现简易五子棋游戏控制台版
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,今天小编给大家分享一下python怎么实现简易五子棋游戏控制台版的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,
千家信息网最后更新 2025年11月07日python怎么实现简易五子棋游戏控制台版
今天小编给大家分享一下python怎么实现简易五子棋游戏控制台版的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
运行效果:
完整代码+注释:
finish = False # 游戏是否结束flagNum = 1 # 当前下棋者标记flagch = '*' # 当前下棋者棋子x = 0 # 当前棋子的横坐标y = 0 # 当前棋子的纵坐标print('---------五子棋游戏(控制台版)---------')# 棋盘初始化checkerboard=[]for i in range(10): checkerboard.append([]) for j in range(10): checkerboard[i].append('-')def msg(): # 输出最后胜利的棋盘 print("\033[1;37;44m--------------------------------") print(" 1 2 3 4 5 6 7 8 9 10") for i in range(len(checkerboard)): print(chr(i + ord('A')) + " ", end=' ') for j in range(len(checkerboard[i])): print(checkerboard[i][j] + " ", end=' ') print() print("--------------------------------\033[0m") # 输出赢家 if (flagNum == 1): print('\033[32m*棋胜利!***\033[0m') else: print('\033[32mo棋胜利!***\033[0m') while not finish: # 打印棋盘 print("\033[1;30;46m--------------------------------") print(" 1 2 3 4 5 6 7 8 9 10") for i in range(len(checkerboard)): print(chr(i + ord('A')) + " ", end=' '); for j in range(len(checkerboard[i])): print(checkerboard[i][j] + " ", end=' ') print() print("--------------------------------\033[0m") # 判断当前下棋者 if flagNum == 1: flagch = '*' print('\033[1;37;40m请*输入棋子坐标(例如A1):\033[0m', end=' ') # 白字黑底 else: flagch = 'o' print('\033[1;30;42m请o输入棋子坐标(例如J5):\033[0m', end=' ') # 黑字绿底 # 输入棋子坐标 str = input() ch = str[0] # 获取第一个字符的大写形式 x = ord(ch) - 65 y = int(str[1]) - 1 # 判断坐标是否在棋盘之内 if (x < 0 or x > 9 or y < 0 or y > 9): print('\033[31m***您输入的坐标有误请重新输入!***\033[0m') continue # 判断坐标上是否有棋子 if (checkerboard[x][y] == '-'): if (flagNum == 1): checkerboard[x][y] = '*' else: checkerboard[x][y] = 'o' else: print('\033[31m******您输入位置已经有其他棋子,请重新输入!\033[0m') continue # 判断棋子左侧 if (y - 4 >= 0): if (checkerboard[x][y - 1] == flagch and checkerboard[x][y - 2] == flagch and checkerboard[x][y - 3] == flagch and checkerboard[x][y - 4] == flagch): finish = True msg() # 判断棋子右侧 if (y + 4 <= 9): if (checkerboard[x][y + 1] == flagch and checkerboard[x][y + 2] == flagch and checkerboard[x][y + 3] == flagch and checkerboard[x][y + 4] == flagch): finish = True msg() # 判断棋子上方 if (x - 4 >= 0): if (checkerboard[x - 1][y] == flagch and checkerboard[x - 2][y] == flagch and checkerboard[x - 3][y] == flagch and checkerboard[x - 4][y] == flagch): finish = True msg() # 判断棋子下方 if (x + 4 <= 9): if (checkerboard[x + 1][y] == flagch and checkerboard[x + 2][y] == flagch and checkerboard[x + 3][y] == flagch and checkerboard[x + 4][y] == flagch): finish = True msg() # 判断棋子右上方向 if (x - 4 >= 0 and y - 4 >= 0): if (checkerboard[x - 1][y - 1] == flagch and checkerboard[x - 2][y - 2] == flagch and checkerboard[x - 3][y - 3] == flagch and checkerboard[x - 4][y - 4] == flagch): finish = True msg() # 判断棋子右下方向 if (x + 4 <= 9 and y - 4 >= 0): if (checkerboard[x + 1][y - 1] == flagch and checkerboard[x + 2][y - 2] == flagch and checkerboard[x + 3][y - 3] == flagch and checkerboard[x + 4][y - 4] == flagch): finish = True msg() # 判断棋子左上方向 if (x - 4 >= 0 and y + 4 <= 9): if (checkerboard[x - 1][y + 1] == flagch and checkerboard[x - 2][y + 2] == flagch and checkerboard[x - 3][y + 3] == flagch and checkerboard[x - 4][y + 4] == flagch): finish = True msg() # 判断棋子左下方向 if (x + 4 <= 9 and y + 4 <= 9): if (checkerboard[x + 1][y + 1] == flagch and checkerboard[x + 2][y + 2] == flagch and checkerboard[x + 3][y + 3] == flagch and checkerboard[x + 4][y + 4] == flagch): finish = True msg() flagNum *= -1; # 更换下棋者标记以上就是"python怎么实现简易五子棋游戏控制台版"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。
棋子
输入
坐标
棋盘
知识
篇文章
五子棋
控制台
五子
控制
方向
胜利
简易
内容
标记
输出
不同
很大
代码
位置
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
扬州常规软件开发行业
下载云服务器有什么用
数据库窗口怎么打开方式
儿童网络安全
在发生网络安全事件时
克州软件开发厂家价格
依兰手机软件开发
鹤城金融共筑网络安全防线
软件开发课题经费
淮南龙忆互联网科技有限公司
拉曼 数据库
数据库安全注册
贵阳市网络安全监测中心
平谷区智能网络技术怎么样
温岭市民卡app服务器异常
校长加强校园网络安全的重点
2014服务器销售
计算机网络技术聊天用能
服务器管理网站空间
服务器带外管理设置吗
cgf网络安全
长沙直播软件开发报价
php删除后台数据库
四川商务进口软件服务器
dos下进去数据库
rbn 网络安全
船运仓管数据库
阿里云 美国服务器
厦门人才引进服务器
申请iso9001软件开发