2013-05-05 25 views
0

作为计算机科学作业的一部分,我需要测试数独格是否有效 或无效。我已经对程序进行了几次调试,并将第二次迭代的值插入到问题区域中,并且返回了正确的值 - 所以很明显我忽略了一些内容。数独格测试仪 - 列表索引超出范围

下面的代码段给我的问题:

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 

它返回以下错误:“builtins.IndexError:列表索引超出范围”为线9在第二迭代中,其中c = 1, a = 1,x = 7和b = 0。

希望对此有一个简单的解决方法,提前感谢您的帮助。的a

回答

1

值在你的代码,这ofcourse不是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 
+0

谢谢Dhruv直升机有效的索引变成9。在x = 1之下添加a = 0可以解决问题。 – YodaScholtz 2013-05-05 08:36:36