python编了一个计算数独程序,出问题了,一直找不出来

jsrcdj1995 2017-03-23 06:23:30
用python编一个数独程序,中间出了点问题,找到问题的代码在哪了,但是一直找不出问题来,求助!!

def delNum(self,x,y,num):
def callm(m,n,num,i):
print('There!',(m,n),num,i)

for i in range(9):
if x != i:
if num in self.m[i][y]:
callm(x,y,num,i)
self.m[i][y].remove(num)
if len(self.m[i][y])==1:
self.v[i][y]=num
for i in range(9):
if y != i:
if num in self.m[x][i]:
callm(x,y,num,i)
self.m[x][i].remove(num)
if len(self.m[x][i])==1:
self.v[x][i]=num

这是问题的代码片段,这是class中的片段,self.v是确定的值,self.m是可能的值,都是数组。
传入值中,x,y为该格子的位置,num为要删除的数
当某一格的值确定以后就调用这段代码,先纵向再横向地把self.m其他格子中的这个值删掉。
经过某些运算以后值为下面的

运算中被删掉的值与其位置在下面

问题就出现了,上面框中所示位置在(7,4) 3 4那里已经将(4,4)中的3删除了,(4,4)中只剩4一个值,怎么会查出这一列只有一个3??而且(7,3)中确定数为8,这里显示3??
...全文
183 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

37,744

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧