python五子棋代码最简单的,python五子棋代码画棋盘

大家好,本文将围绕python五子棋代码输赢逻辑判断展开说明,如何用python制作五子棋游戏是一个很多人都想弄明白的事情,想搞清楚python五子棋代码最简单的需要先了解以下几个事情。

1、求解用python 编写五子棋怎样编写判断输赢的函数,应该从哪方面考虑呢?最好有代码,,,,谢谢

你都做到这个程度了,当然就是高手了。 把棋子位置放在一个数据里。然后做一个路径搜索算法。只搜索8个方向,如果某个方向有5个子连在一起就赢了。
这是个笨方法,还有很多优化的地方,比如上一次搜索后,建立一个路径数组。下一次,只需要检验上一次结果,并将新的棋子放进路径里就可以了。 这样就效率很高了。
具体的你自己研究。这个对你来说应该轻松啦。

2、请用PYTHON编一个小游戏,如五子棋,连连看,贪吃蛇,扫雷,计算器等等

#!/usr/bin/python from Tkinter import * import random class snake(Frame):         def __init__(self, master=None):                 Frame.__init__(self, master)                 self.body = [(0,0)]                 self.bodyid = []                 self.food = [ -1, -1 ]                 self.foodid = -1                 self.gridcount = 10                 self.size = 500                 self.di = 3                 self.speed = 500                 self.top = self.winfo_toplevel()                 self.top.resizable(False, False)                 self.grid()                 self.canvas = Canvas(self)                 self.canvas.grid()                 self.canvas.config(width=self.size, height=self.size,relief=RIDGE)                 self.drawgrid()                 s = self.size/self.gridcount                 id = self.canvas.create_rectangle(self.body[0][0]*s,self.body[0][1]*s,                         (self.body[0][0]+1)*s, (self.body[0][1]+1)*s, fill="yellow")                 self.bodyid.insert(0, id)                 self.bind_all("<KeyRelease>", self.keyrelease)                 self.drawfood()                 self.after(self.speed, self.drawsnake)         def drawgrid(self):                 s = self.size/self.gridcount                 for i in range(0, self.gridcount+1):                         self.canvas.create_line(i*s, 0, i*s, self.size)                         self.canvas.create_line(0, i*s, self.size, i*s)         def drawsnake(self):                 s = self.size/self.gridcount                 head = self.body[0]                 new = [head[0], head[1]]                 if self.di == 1:                         new[1] = (head[1]-1) % self.gridcount                 elif self.di == 2:                         new[0] = (head[0]+1) % self.gridcount                 elif self.di == 3:                         new[1] = (head[1]+1) % self.gridcount                 else:                         new[0] = (head[0]-1) % self.gridcount                 next = ( new[0], new[1] )                 if next in self.body:                         exit()                 elif next == (self.food[0], self.food[1]):                         self.body.insert(0, next)                         self.bodyid.insert(0, self.foodi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值