没有合适的资源?快使用搜索试试~ 我知道了~
基于python的socket实现单机五子棋到双人对战
5星 · 超过95%的资源 13 下载量 15 浏览量
2020-09-19
07:07:33
上传
评论 3
收藏 82KB PDF 举报
温馨提示
试读
5页
主要为大家详细介绍了基于python的socket实现单机五子棋到双人对战,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
资源推荐
资源详情
资源评论
基于基于python的的socket实现单机五子棋到双人对战实现单机五子棋到双人对战
主要为大家详细介绍了基于python的socket实现单机五子棋到双人对战,具有一定的参考价值,感兴趣的小伙伴
们可以参考一下
基于python的socket实现单机五子棋到双人对战,供大家参考,具体内容如下
本次实验使用python语言。通过socket进行不同机器见的通信,具体可以分为以下四步:1.创建ServerSocket和Socket;2.打
开链接到Socket的输入/输出流;3.按照协议对Socket进行读/写操作;4.关闭输入输出流、关闭Socket。
由于是双人对战,服务器必须应对多人及以上的客户端的连接,因此本实验还引入了python的threading多线程模块,通过监
听实时监控网络状态,同时利用socket.listen(2)引入排队等待机制。
chess类类
#五子棋类
import os
class chessboard(object):
def __init__(self):
self.size = 16
#初始化棋盘
self.__board=[[' ' for n in range(self.size)] for m in range(self.size)]
n = 0
#添加桌面标签
while n < self.size:
ntr=str(n)
self.__board[0][n] = ntr.zfill(2)
self.__board[n][0] = ntr.zfill(2)
n=n+1
self.id=0
#胜利条件
def is_end(self):
ch_stack=[]
#行检查
for i in range(self.size):
for j in range(self.size):
#判断是否结束
chess=self.__board[i][j]
if len(ch_stack)==5 and ch_stack[-1]=='* ':
print('winner=id 1')
return 1
elif len(ch_stack) == 5 and ch_stack[-1] == '@ ':
print('winner=id 2')
return 2
if chess==' ':
ch_stack.clear()
else:
if (not ch_stack) or ch_stack[-1] == chess:
ch_stack.append(chess)
else:
ch_stack.clear()
ch_stack.append(chess)
ch_stack.clear()
ch_stack.clear()
#列检查
for j in range(self.size):
for i in range(self.size):
#判断是否结束
if len(ch_stack)==5 and ch_stack[-1]=='* ':
print('winner=id 1')
return 1
elif len(ch_stack) == 5 and ch_stack[-1] == '@ ':
print('winner=id 2')
return 2
chess=self.__board[i][j]
if chess==' ':
ch_stack.clear()
else:
if (not ch_stack) or ch_stack[-1] == chess:
ch_stack.append(chess)
else:
ch_stack.clear()
ch_stack.append(chess)
ch_stack.clear()
ch_stack.clear()
#左斜检查
#下三角
资源评论
- VashtaNerada2023-07-24这个文件提供了一个简洁而精确的五子棋实现,让人一下子就能上手。
- 阿玫小酱当当囧2023-07-24这个文件的作者用心地考虑到了各种边界情况,确保了游戏的稳定性和公平性。
- 航知道2023-07-24这个文件的代码注释非常清晰,让阅读者很容易理解每一步的实现逻辑。
- 挽挽深铃2023-07-24文件中通过socket实现了双人对战的功能,让玩家可以与朋友一起享受五子棋的乐趣。
- MsingD2023-07-24作者以简洁的语言解释了五子棋的规则和实现细节,非常易懂。
weixin_38679277
- 粉丝: 6
- 资源: 910
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功