python实现双人五子棋(终端版)
作者:Miku丨无形 时间:2022-08-26 14:28:57
五子棋还是有很多大佬发的,今天我也发一篇萌新写的小五子棋,这个是终端版的,如果有问题请大家指出,我去修改
代码如下:
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()
效果图如下:
来源:https://blog.csdn.net/Miku_wx/article/details/111831268
标签:python,五子棋
0
投稿
猜你喜欢
Windows10下mysql 8.0.19 安装配置方法图文教程
2024-01-21 06:33:27
Sanic框架安装与简单入门示例
2022-06-08 19:37:41
Python pip 常用命令汇总
2023-06-10 06:11:38
详解numpy1.19.4与python3.9版本冲突解决
2021-10-26 22:51:26
在主机商的共享服务器上部署Django站点的方法
2021-03-20 22:41:34
SpringBoot集成内存数据库Sqlite的实践
2024-01-15 10:24:11
论坛首页效果图设计
2009-03-19 13:46:00
IE6浮出层穿透解决方案中的iframe高度自适应
2009-10-30 18:08:00
你应当了解的5个CSS3新技术
2009-02-11 13:01:00
php 删除一维数组中某一个值元素的操作方法
2024-06-05 09:51:01
Django上传xlsx文件直接转化为DataFrame或直接保存的方法
2023-12-02 14:42:16
深入浅出解析mssql在高频,高并发访问时键查找死锁问题
2024-01-29 02:32:54
基于telepath库实现Python和JavaScript之间交换数据
2023-05-24 04:20:39
asp ajax跨域提交数据
2011-04-11 10:56:00
Python 模板引擎的注入问题分析
2021-05-26 17:05:30
Django通过json格式收集主机信息
2022-03-23 19:58:49
MySQL主从同步原理及应用
2024-01-18 07:42:24
python对一个数向上取整的实例方法
2023-04-12 09:07:50
Python命令行参数argv和argparse该如何使用
2022-04-05 01:38:52
SQL SERVER中各类触发器的完整语法及参数说明
2024-01-15 20:54:17