资源简介
Python项目案例开发从入门到实战源代码第14章 网络通讯案例——基于UDP的网络五子棋.rar
代码片段和文件信息
from tkinter import *
from tkinter.messagebox import *
import socket
import threading
import string
root = Tk()
root.title(“ 五子棋--夏敏捷2016-2-11仨个小时 网络版 UDP 客户端“)
imgs= [PhotoImage(file=‘D:\\python\\bmp\\BlackStone.gif‘) PhotoImage(file=‘D:\\python\\bmp\\WhiteStone.gif‘)]
turn=0
def callback(event):#走棋
global turn
#print (“clicked at“ event.x event.yturn)
x=(event.x)//40 #换算棋盘坐标
y=(event.y)//40
print (“clicked at“ x yturn)
if map[x][y]!=“ “:
showinfo(title=“提示“message=“已有棋子“)
else:
img1= imgs[turn]
cv.create_image((x*40+20y*40+20)image=img1)
cv.pack()
map[x][y]=str(turn)
k=win_lose( )
#print_map( ) #输出map地图
if win_lose( )==True:
if turn==0 :
showinfo(title=“提示“message=“黑方你赢了“)
else:
showinfo(title=“提示“message=“白方你赢了“)
#换下一方走棋
if turn==0 :
turn=1
else:
turn=0
pos=str(x)+““+str(y)
sendMessage(pos)
def drawQiPan( ):#画棋盘
for i in range(015):
cv.create_line(2020+40*i58020+40*iwidth=2)
for i in range(015):
cv.create_line(20+40*i2020+40*i580width=2)
cv.pack()
def win_lose( ):#输赢判断
#扫描整个棋盘,判断是否连成五颗
a = str(turn)
print (“a=“a)
for i in range(011):#0--10
# 判断X= Y轴上是否形成五子连珠
for j in range(011):#0--10
if map[i][j] == a and map[i + 1][j + 1] == a and map[i + 2][j + 2] == a and map[i + 3][j + 3] == a and map[i + 4][j + 4] == a :
print(“X= Y轴上形成五子连珠“)
return True
for i in range(415):# 4 To 14
# 判断X= -Y轴上是否形成五子连珠
for j in range(011):#0--10
if map[i][j] == a and map[i - 1][j + 1] == a and map[i - 2][j + 2] == a and map[i - 3][j + 3] == a and map[i - 4][j + 4] == a :
print(“X= -Y轴上形成五子连珠“)
return True
for i in range(015):#0--14
# 判断Y轴上是否形成五子连珠
for j in range(415):# 4 To 14
if map[i][j] == a and map[i][j - 1] == a and map[i][j - 2] == a and map[i][j - 3] == a and map[i][j - 4] == a :
print(“Y轴上形成五子连珠“)
return True
for i in range(011):#0--10
# 判断X轴上是否形成五子连珠
for j in range(015):#0--14
if map[i][j] == a and map[i + 1][j] == a and map[i + 2][j] == a and map[i + 3][j] == a and map[i + 4][j] == a :
print(“X轴上形成五子连珠“)
return True
return False
#End Function
def print_map( ):#输出map地图
for j in range(015):#0--14
for i in range(015):#0--14
print (map[i][j]end=‘ ‘)
print (‘w‘)
def drawOtherChess(xy):#画对方棋子
global turn
img1= imgs[turn]
cv.create_image((x*40+2
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 5433 2016-07-27 09:06 第14章 网络通讯案例——基于UDP的网络五子棋\五子棋游戏 - 单机版\人机井字棋.py
文件 3841 2016-02-11 19:15 第14章 网络通讯案例——基于UDP的网络五子棋\五子棋游戏 - 单机版\鼠标事件-3 五子棋游戏 - 单机版 V1.0.py
文件 5716 2016-08-31 10:23 第14章 网络通讯案例——基于UDP的网络五子棋\五子棋游戏 - 单机版\鼠标事件-3 五子棋游戏 - 单机版 V2.0(悔棋版).py
文件 4827 2016-02-28 12:05 第14章 网络通讯案例——基于UDP的网络五子棋\五子棋游戏 - 单机版\鼠标事件-3 五子棋游戏 - 单机版 V2.0.py
文件 70 2016-02-16 09:55 第14章 网络通讯案例——基于UDP的网络五子棋\版本.txt
文件 5886 2016-02-13 20:41 第14章 网络通讯案例——基于UDP的网络五子棋\鼠标事件-3 五子棋游戏 - 网络版 UDP 客户端1.0.py
文件 7226 2016-08-01 16:01 第14章 网络通讯案例——基于UDP的网络五子棋\鼠标事件-3 五子棋游戏 - 网络版 UDP 客户端V2.0.py
文件 7659 2016-08-31 10:49 第14章 网络通讯案例——基于UDP的网络五子棋\鼠标事件-3 五子棋游戏 - 网络版 UDP 客户端V2.1.py
文件 6071 2016-02-13 20:46 第14章 网络通讯案例——基于UDP的网络五子棋\鼠标事件-3 五子棋游戏 - 网络版 UDP 服务器端1.0.py
文件 7165 2016-08-31 10:49 第14章 网络通讯案例——基于UDP的网络五子棋\鼠标事件-3 五子棋游戏 - 网络版 UDP 服务器端V2.1.py
目录 0 2018-11-07 19:54 第14章 网络通讯案例——基于UDP的网络五子棋\五子棋游戏 - 单机版
目录 0 2018-11-07 19:54 第14章 网络通讯案例——基于UDP的网络五子棋
----------- --------- ---------- ----- ----
53894 12
相关资源
- Python项目案例开发从入门到实战源代
- python写的专家系统玩具分类
- 基于决策树的天气大数据回归例程
- python实现图像的混沌加密解密
- think python 中文版.pdf
- kNN分类器和两个-Python
- TensorFlow实现股票预测的Python代码
- 解压微信小程序源码python文件
- python数据结构与算法
- 支持向量机几个的代码
- Python:网络爬虫抓取豆瓣3万本书-详细
- Python GUI项目:文件夹管理系统代码
- python2.7_批量读取netCDF4文件并输出为
- Python 3网络爬虫开发实战pdf 崔庆才著
- python串口读写
- 基于Python的Vibe目标检测代码
- python首次连接STK
- PSO_TSP_Python
- PythonOCC的安装
-
pyQt5_wavepla
yer python计算声音分贝 语 - The Python Language Reference Manual 无水印
- iris.csv数据集和python代码
- Python爬虫爬取校内论坛标题,并将关
- crowd counting test single image demo
- kNN(python实现)
- ds18x20_onewire.rar
- python生成扭曲带干扰验证码
- 基于OpenCV 3 LBPH 人脸识别 Python代码
- Python标准库源代码.zip
- 信息隐藏——Python语言幻方置乱实现
评论
共有 条评论