python实现双人五子棋(终端版)
更新时间:2020年12月30日 14:23:47 作者:Miku丨无形
这篇文章主要为大家详细介绍了python实现终端版的双人五子棋,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
五子棋还是有很多大佬发的,今天我也发一篇萌新写的小五子棋,这个是终端版的,如果有问题请大家指出,我去修改
代码如下:
screen = [] screen_change=0 def into():#初始空白棋盘 for i in range(screen_change): list_width=[] for j in range(screen_change): list_width.append(' '+' |') screen.append(list_width) def user_black(): while True: coordinate = input("黑方请输入你想填下子的坐标 例1,2或者5,5") coordinate=coordinate.split(',') width_num = int(coordinate[0]) - 1 high_num = int(coordinate[1]) - 1 if screen[width_num][high_num][1]!=' ': print('你输入的地方已经有棋子了,请重新输入') continue screen[width_num][high_num] = ' ' + '@' + ' |' break screen_print() def user_white(): while True: coordinate = input("白方请输入你想填下子的坐标 例1,2或者5,5") coordinate = coordinate.split(',') width_num = int(coordinate[0]) - 1 high_num = int(coordinate[1]) - 1 if screen[width_num][high_num][1] != ' ': print('你输入的地方已经有棋子了,请重新输入') continue screen[width_num][high_num] = ' ' + '#' + ' |' break screen_print() def eeferee():#判断输赢 #判断行 for i in range(screen_change): for j in range(screen_change-4): if screen[i][j][1]==screen[i][j+1][1]==screen[i][j+2][1]==screen[i][j+3][1]==screen[i][j+4][1] and screen[i][j][1]!=' ': return False for i in range(screen_change - 4): for j in range(screen_change): if screen[i][j][1]==screen[i+1][j][1]==screen[i+2][j][1]==screen[i+3][j][1]==screen[i+4][j][1] and screen[i][j][1]!=' ': return False for i in range(screen_change - 4): for j in range(screen_change - 4): if screen[i][j][1]==screen[i+1][j+1][1]==screen[i+2][j+2][1]==screen[i+3][j+3][1]==screen[i+4][j+4][1] and screen[i][j][1]!=' ': return False for k in range(4,screen_change): if k>=4: if screen[i][k][1] == screen[i+1][k-1][1] == screen[i+2][k-2][1] == screen[i+3][k-3][1] == screen[i+4][k-4][1] and screen[i][k][1] != ' ': return False return True def screen_print():#打印棋盘 print('——' * (screen_change*3+1)) for i in range(screen_change): print('|',end=' ') for j in range(screen_change): print(screen[i][j],end=' ') print() print('——'*(screen_change*3+1)) def main(): global screen_change screen_change = int(input('请输入你设定的棋盘大小:')) into() screen_print() while eeferee(): user_black() if not eeferee(): break user_white() print('游戏结束') if __name__=='__main__': main()
效果图如下:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
Python运行报错UnicodeDecodeError的解决方法
本文给大家分享的是在Python项目中经常遇到的关于编码问题的一个小bug的解决方法以及分析方法,有相同遭遇的小伙伴可以来参考下2016-06-06Python操作SQLite数据库的方法详解【导入,创建,游标,增删改查等】
这篇文章主要介绍了Python操作SQLite数据库的方法,简单说明了sqlite数据库的相关概念,并结合实例形式较为详细的分析了Python针对sqlite数据库的导入,创建,游标,增删改查等操作技巧,需要的朋友可以参考下2017-07-07
最新评论