作为计算机科学任务的一部分,我被要求测试数独网格是否有效 或无效。我已经调试了几次程序,并将第二次迭代的值插入问题区域,并返回正确的值 - 所以显然我可以忽略这些。
以下代码部分给了我一些问题:
array = ['752639841','348751926','169284573','923146785','481975362','675823194','816392457','294517638','537468219']
columncheck=True
a=0
b=0
x=1
for i in range(9):
x=1
for c in range(9):
x=x*int((array[a])[b])
a=a+1
if x!=362880:
columncheck=False
print(x)
b=b+1
它返回以下错误:第二次迭代中第9行的“builtins.IndexError:列表索引超出范围”,其中c = 1,a = 1,x = 7,b = 0。
希望有一个简单的解决方法,请提前感谢您的帮助。
答案 0 :(得分:1)
a
的值在您的代码中变为9,其中当前不是array
的有效索引
for i in range(9):
x=1
for c in range(9):
print(a) # notice this output
print(b)
x=x*int((array[a])[b])
a=a+1