基于python的五子棋游戏的设计和实现,python游戏代码五子棋
本文主要详细介绍了简单五子棋游戏的python实现。本文中的示例代码非常详细,具有一定的参考价值。感兴趣的朋友可以参考一下。
本文分享python实现简单五子棋游戏的具体代码,供大家参考。具体如下。
操作效果:
完整的代码注释:
Finish=False #游戏结束了吗?
当前棋手的1号标志
当前棋手的棋子
X=当前棋子的0 #横坐标
Y=当前棋子的0 #纵坐标
打印(-)
#棋盘初始化
棋盘=[]
对于范围(10):内的I
checkerboard.append([])
对于范围(10):内的j
棋盘[i]。追加(-)
定义消息():
#输出最后胜利的棋盘
打印( \ 033[1;37;44m -)
打印( 1 2 3 4 5 6 7 8 9 10 )
对于范围内的I(透镜(棋盘)):
print(chr(I order( A ) ,end= )
对于范围内的j(len(checkerboard[I])):
print(棋盘[i][j] ,end= )
打印()
打印(- \033[0m )
#输出获胜者
if (flagNum==1):
打印( \033[32m*棋局胜利!***\033[0m )
else:
打印( \033[32mo棋局胜利!***\033[0m )
虽然没有完成:
#印花棋盘
打印( \ 033[1;30;46米-)
打印( 1 2 3 4 5 6 7 8 9 10 )
对于范围内的I(透镜(棋盘)):
print(chr(I order( A )) ,end= );
对于范围内的j(len(checkerboard[I])):
print(棋盘[i][j] ,end= )
打印()
打印(- \033[0m )
#判断当前棋手
如果flagNum==1:
flagch=*
打印( \ 033[1;37;40m请*输入棋子的坐标(如A1): \ 033 [0m ,end=) #白底黑字
else:
flagch=o
打印( \ 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或x 9或y 0或y 9):
Print(\033[31m***您输入的坐标是错误的。请重新输入!***\033[0m )
继续
#判断坐标上是否有棋子
if(棋盘[x][y]==-):
if (flagNum==1):
棋盘[x][y]=*
else:
棋盘[x][y]=o
else:
打印( \ 033 [31m * * * * *您输入的位置已经有其他棋子,请重新输入!\ 033[0m ]
继续
#判断棋子的左边
if (y - 4=0):
我
f (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; # 更换下棋者标记
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持盛行IT软件开发工作室。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。