def isSudokuBox(B):
for i in range(0, 3):
for z in range(0, 3):
if int(B[i][z]) <= 0:
return False
continue
elif int(B[i][z]) > 9:
return False
continue
因此,我制作了检查数字是否为1到9的部分,它可以工作,但是我不知道如何检查重复的数字。我能做什么?一种方法是为每种可能的情况制作条件,但这非常繁琐且不太美观。必须有另一种方式
您可以做的是拥有一个带有9个0的数组:
numCounts = [0,0,0, 0,0,0, 0,0,0]
每次查看数字增量时,它都是索引。如果索引大于1,则您有重复的数字:
numCounts[number]+=1
if(numCounts > 1):
print("duplicate " + str(number))