我的程序应该自动填充(如ms画)文本文件。我无法弄清楚为什么这会给我一个超出范围的指数。
此外,我的填充函数必须是递归的,并按以下顺序调用相邻单元格:上方,右方,下方和左侧。更好或更有效的方法请告诉我(如果我甚至做我想做的事情的话)。
答案 0 :(得分:2)
[int(row)][int(col)]
没有按预期工作。
它创建一个包含一个元素的列表,int(row)
,然后尝试访问其int(col)
元素。实际上,每次int(col)
为> 0
时,此行都会引发异常。
相反,你应该使用一个元组:
p = int(row), int(col)
但请记住,它是不可变的,因此您无法在以后直接更改它:
p = int(row), int(col)
p[0] = 3
>> TypeError: 'tuple' object does not support item assignment
虽然你可以重新分配一个新的元组:
p = int(row), int(col)
p = 3, int(col)