<p>我正在试着做一个数独解算器,目前我正在做一个检查它是否被解决的部分,但我有点卡住了。网格是由81个数字(9*9)组成的,然后我有字典将它们分成行、列和框,例如:</p>
<pre><code>self.rows = {'toptop':self.board[0:9],'topmid':self.board[9:18],'topbottom':self.board[18:27],
'midtop':self.board[27:36],'midmid':self.board[36:45],'midbottom':self.board[45:54]
</code></pre>
<p>哦,
我要做的是检查每一行、每一列或每一个框中是否有数字1-9。我做过一次又一次的实验</p>
<pre><code>self.winning = [1,2,3,4,5,6,7,8,9]
[x for x in self.rows.values() if (x == y for y in self.winning)]
</code></pre>
<p>但它只返回了分组到行中的每个值。我也尝试了不同的方法,有些方法会返回数字为1-9的列表,但它们经常有重复项;它们永远不会以1-9的形式显示列表。我怎样才能做到这一点?谢谢</p>