问题描述
我目前正在尝试实现Sudoku求解器,其中创建了9x9电路板和一个字典对象sDict,其中包含该电路板上每个位置的所有候选集。在添加到板上之前,我验证是否可以使用sDict将值放置在特定位置。这在 ini 方法中有效,因为sDict在将初始输入放入电路板时会更新其值。
但是,关于 setitem 特殊方法存在一个问题,在提供两个索引值时,该方法似乎不起作用。似乎只能在仅使用一个[]索引时调用 setitem 方法,而无论何时使用两个[] []索引,都将完全忽略我重写的更新板的方法。谁能解释为什么会这样?是否有比仅切换到单个索引更好的解决方案?
下面的setitem代码:
def __setitem__(self,index1,index2 value):
if self.validate((index1,index2),value): # somehow getting through the check
self.board[index1][index2] = value
else:
ValueError("Value '%d' is not a valid input for this position" %value)
提前谢谢! :)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)